小蚂蚁学习C语言(25)——C语言结构体——使用结构体手动录入信息的小案例...
生活随笔
收集整理的這篇文章主要介紹了
小蚂蚁学习C语言(25)——C语言结构体——使用结构体手动录入信息的小案例...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
????需求:動態創建一個數組,數組元素使用結構體,實現,可以手動輸入信息,將手動輸入的信息進行一個排序,并把信息輸出。
#?include?<stdio.h> #?include?<malloc.h>//定義一個存放學生信息的結構體 struct?student {char?name[100];int?age;float?score; };//輸入函數,用于輸入學生信息 void?InputInfo(struct?student?*?member,int?len) {int?i;for(i?=?0;?i?<?len;?++i){printf("請輸入第%d個學生的信息\n",i+1); //line?20printf("name=");scanf("%s",member[i].name);printf("age=");scanf("%d",?&member[i].age);printf("score=");scanf("%f",?&member[i].score);printf("\n\n");}}//輸出函數,講學生的信息輸出 void?OutputInfo(struct?student?*?member,int?len) {int?i;for(i=0;?i?<?len;?++i){printf("%s?\n",member[i].name);/*這里不能寫member[i]->name,member[i]就代表了這個結構體的名字,所以應該使用?member[i].name*/printf("%d?\n",member[i].age);printf("%f?\n",member[i].score);}}//對學生的成績,進行降序排序 void?maopao(struct?student?*?member,int?len) {int?i,j;struct?student?t;for(i?=?0;?i?<?len-1;?++i){for(j?=?0;?j?<?len-1-i;?++j){if(member[j].score?<?member[j+1].score){t?=?member[j];member[j]?=?member[j+1];member[j+1]?=t;}}} }//主函數,開辟動態空間 int?main(void) {int?len;printf("請寫入需要輸入學生的數量:\n");scanf("%d",&len);struct?student?*?member?=?(struct?student?*)malloc(sizeof(struct?student)?*?len);//?這時候member就是定義了一個數組InputInfo(member,len);maopao(member,?len);OutputInfo(member,len);return?0; } /*VC++6.0的輸出結果是:===================================請寫入需要輸入學生的數量:3請輸入第1個學生的信息name=小艾age=23score=99.9請輸入第2個學生的信息name=小王age=23score=45.6請輸入第3個學生的信息name=小黑age=54score=22.5小艾2399.900002小王2345.599998小黑5422.500000=================================== */學PHP的小螞蟻 博客?http://my.oschina.net/woshixiaomayi/blog
轉載于:https://my.oschina.net/woshixiaomayi/blog/548641
總結
以上是生活随笔為你收集整理的小蚂蚁学习C语言(25)——C语言结构体——使用结构体手动录入信息的小案例...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 实用开源控件
- 下一篇: C# asp:Repeater Dat