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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C语言-成绩排名(结构)

發(fā)布時間:2024/1/18 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言-成绩排名(结构) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題目詳情

定義結(jié)構(gòu)體struct stu,編寫成績排名函數(shù):void sort(struct stu *ps,int n),對結(jié)構(gòu)體數(shù)組按成績排名。程序功能為讀入整數(shù)N(N<100),再讀入N個學(xué)生的學(xué)號(整型)和成績(實(shí)數(shù))。按樣例輸出排名。


文章目錄?

  • 一、輸入樣例
  • 二、輸出樣例
  • 三、代碼展示
  • 四、難點(diǎn)記錄


一、輸入樣例

首先輸入n(n<100),其次輸入n個學(xué)生的學(xué)號(整型)與成績(實(shí)數(shù))。

5 101 99 102 100 103 50 104 80 105 99

二、輸出樣例

第一列輸出名字(注意并列情況),第二列是學(xué)號,第三列是成績(保留兩位小數(shù))。

1 102 100.00 2 101 99.00 2 105 99.00 4 104 80.00 5 103 50.00

三、代碼展示

#include<stdio.h> struct student{int num;double score; }; //定義結(jié)構(gòu)體 int main() {int i,n,index,j,z; //定義變量scanf("%d",&n); //輸入需要記錄的學(xué)生人數(shù)struct student stu[n],max; //定義結(jié)構(gòu)體變量for(i=0;i<n;i++){scanf("%d %lf",&stu[i].num,&stu[i].score);}//輸入n個學(xué)生的學(xué)號與成績for(i=0;i<n-1;i++){index=i;for(j=i+1;j<n;j++){if(stu[index].score<stu[j].score){index=j;}}max=stu[index];stu[index]=stu[i];stu[i]=max;}//對n個學(xué)生的成績進(jìn)行排名(由大到小)for(i=0,z=0;i<n;i++){if(stu[i].score==stu[i-1].score)printf("%d %d %.2lf",z,stu[i].num,stu[i].score);else{printf("%d %d %.2lf",i+1,stu[i].num,stu[i].score);z=i+1;}//輸出n個學(xué)生的排名情況if(i<n-1)printf("\n");} }

四、難點(diǎn)記錄

本題難點(diǎn)在于當(dāng)有相同的成績時,要進(jìn)行排名并列;

總結(jié)

以上是生活随笔為你收集整理的C语言-成绩排名(结构)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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