程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> c語言-一個排序問題,困擾我好久,求前輩們解答

c語言-一個排序問題,困擾我好久,求前輩們解答

編輯:編程綜合問答
一個排序問題,困擾我好久,求前輩們解答

之前發過,可還是沒有解決,網頁也找不到了,我有修改了一下,可還是運行不了,求前輩們幫我看一下。
#include

int imax(int shuzu[], int n)
{
int i, max;

max = shuzu[0];
for (i = 0; i < n; i++) {
    if (shuzu[i] > max) max = shuzu[i];
}

return (max);

}

int main(void)
{
int i, j, k, l, max;
int vb[10], vc[10];

printf("請輸入10個整數\n");
//第一個for:將數據存入數組 
for (i = 0; i < 10; i++) {
    printf("%2d號:", i + 1);
    scanf("%d", &vb[i]);
}

//第二個for:排序 
for (i = 0; i < 9; i++) {
    max = imax(vb, 10 - i);

    //第一個內置for:將比max小的存入vc數組 
    for (j = 0, k = 0; j < 10-i; j++) {
        if (vb[j] < max) {
            vc[k] = vb[j];
            k++;
        }   
    }
    //最後會空出一個給最大值 
    vc[9-i] = max;

    //第二個內置for:將vc的數據還給vb 
    for (l = 0; l < 10-i; l++) {
        vb[l] = vc[l];
    }   
}

for (i = 0; i < 10; i++) {
    printf("%d\n", vb[i]);
} 

return 0;

}


最佳回答:


第二個內置for能用 i 去做循環嗎。。要不把 i 換成 j 什麼的試試。。

a13714270351
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved