[問題] 利用 qsort 排序二維陣列

作者: linshihhua (linshihhua)   2017-09-11 15:42:04
開發平台(Platform): (Ex: Win10, Linux, ...)
Win7
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
Dev-C++ 5.11
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
想對 5*2 的二維陣列的每個元素的第一個分量和第二個分量
分別用 qsort 去做排序
結果只有對第一個排序正確, 對第二個產生錯誤
餵入的資料(Input):
int A[5][2] = {{3, 4}, {1, 2}, {5, 6}, {9, 10}, {7, 8}};
int B[5][2] = {{3, 4}, {1, 2}, {5, 6}, {9, 10}, {7, 8}};
預期的正確結果(Expected Output):
(1, 2) (3, 4) (5, 6) (7, 8) (9, 10)
(1, 2) (3, 4) (5, 6) (7, 8) (9, 10)
錯誤結果(Wrong Output):
(1, 2) (3, 4) (5, 6) (7, 8) (9, 10)
(3, 2) (5, 4) (1, 6) (9, 8) (0, 10)
程式碼(Code):(請善用置底文網頁, 記得排版)
https://ideone.com/RRbwEH
補充說明(Supplement):
作者: Schottky (順風相送)   2017-09-11 15:50:00
被你拿去排序的不是 B 而是 q,兩者差了一"格"所以錯了q={{4,1},{2,5},{6,9},{10,7},{8,?}}
作者: nh60211as   2017-09-11 16:29:00
推樓上
作者: linshihhua (linshihhua)   2017-09-11 18:55:00
感謝, 我知道要怎麼改了
作者: DarkPrincex (DP)   2017-09-12 16:16:00
我猜你的sort是用內建不是自己寫的

Links booklink

Contact Us: admin [ a t ] ucptt.com