C語言 陣列-交換法實現排序
阿新 • • 發佈:2022-04-05
任務描述
使用交換法對學生資訊進行排序:
從鍵盤輸入學生人數n;
從鍵盤輸入所有學生的學號和成績分別存入陣列num和score;
假設學生人數不會超過30;
按成績由低到高排列陣列num和score
1 #include<stdio.h> 2 int main() 3 { 4 float score[30]; 5 float t1; 6 int num[30]; 7 int t2; 8 int n; 9 scanf("%d",&n); 10 for(int i=0;i<n;i++){ 11 scanf("%d%f",&num[i],&score[i]); 12 } 13 for(int i=0;i<n;i++){ 14 for(int j=i; j<n;j++){ 15 if(score[j]<score[i]){ 16 t1=score[j]; 17 score[j]=score[i]; 18 score[i]=t1; 19 t2=num[j]; 20 num[j]=num[i];21 num[i]=t2; 22 } 23 } 24 } 25 printf("After sort:\n"); 26 for(int i=0;i<n;i++){ 27 printf("%d %.0f\n",num[i],score[i]); 28 //TODO 29 } 30 31 return 0; 32 }