日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C_北理工乐学_结构

發(fā)布時間:2023/12/2 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C_北理工乐学_结构 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

C_北理工樂學_結構

58. 學生成績排序

/* 如果有優(yōu)化方案評論我啊 */
/為什么代碼沒有高亮?/

大家參加了期末考試,成績出來后老師要對 n 個學生進行成績匯總和排序。要求程序按成績降序進行排序。在排序過程中對于成績相同的學生,要按照輸入數(shù)據(jù)的順序進行排列。例如:有5名學生的成績:
zhang1,90
zhang2,91
zhang3,99
zhang4,91
zhang5,98

則排序結果應該為:
zhang3,99
zhang5,98
zhang2,91
zhang4,91
zhang1,90

>請注意例題中“zhang2”和“zhang4”的排列順序。

輸入:
第一行為將要輸入的學生數(shù)量n
從第二行起后面連續(xù) n 行數(shù)據(jù),每行為一名學生的姓名(長度不超過20個字符,不包括空格),考試成績(int)

輸出:
排序后的結果。每行為一名學生的姓名和成績。

#include <stdio.h> #include <stdlib.h> #include <math.h> int main() {int num;int i,j,t=0;char inf[10000];int m[100];int temp;int flag;struct o{char name[1000];int score;int no;}student[100];/*輸入學生個數(shù)*/scanf("%d",&num); for(i=0;i<num;i++){ student[i].no=i; //標記序號t=0;flag=0;scanf("%s",inf);/*輸入姓名*/for(j=0;inf[j]!=',';j++){student[i].name[j]=inf[j];}student[i].name[j]='\0'; //添加姓名尾標/*輸入成績*/for(j++;inf[j]!='\0';j++){m[t]=inf[j]-'0';t++;}student[i].score=0;for(j=0;j<t;j++)student[i].score=m[j]*pow(10,t-j-1)+student[i].score; //計算成績}/*降序排序*/for(i=0;i<num;i++)for(j=i+1;j<num;j++)if(student[i].score<student[j].score&&student[i].no<student[j].no){temp=student[i].no;student[i].no=student[j].no;student[j].no=temp; }/*分數(shù)相同根據(jù)姓名排序*//*因為玄學把單獨拿出來,否則測試用例1錯誤*/for(i=0;i<num;i++)for(j=i+1;j<num;j++)if(student[i].score==student[j].score){for(t=0;student[j].name[t]!='\0'&&student[i].name[t]!='0';t++)if(student[j].name[t]>student[i].name[t]&&student[j].no<student[i].no){temp=student[i].no;student[i].no=student[j].no;student[j].no=temp; }}/*輸出*/for(i=0;i<num;i++)for(j=0;j<num;j++)if(student[j].no==i){for(t=0;student[j].name[t]!='\0';t++)printf("%c",student[j].name[t]);printf(",");printf("%d\n",student[j].score);} }

總結

以上是生活随笔為你收集整理的C_北理工乐学_结构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。