进入死循环我想你是想写成这样吧:for(j=9;j>=9-i;j--) ||| for(i=9;i>=0;i--) { tmp = score[i]; score[i] = score[i-1]; score[i-1] = tmp;}将上面的循环哪里改成这个 ||| #include"stdio.h"void main(){int score[10];int i 所以"j>=j-i"永远也为真 j-i 永远也小于 j 已知 i 为正数 以此类推{if(score[j]<score[j-1]){tmp=score[j];score[j]=score[j-1];score[j-1]=tmp;}}}for(i=0;i<10;i++)printf("%d/t" tmp;for(i=0;i<10;i++){printf("输入成绩");scanf("%d" j 14行的"j>=j-i" 就只要比较8次 score[i]);} &score[i]);}for(i=0;i<10-1;i++) //九次{for(j=0;j<10-1-i;j++) //第一次比较9次;排完一个后