學(xué)生成績(jī)信息表(c語(yǔ)言程序)_第1頁(yè)
學(xué)生成績(jī)信息表(c語(yǔ)言程序)_第2頁(yè)
學(xué)生成績(jī)信息表(c語(yǔ)言程序)_第3頁(yè)
學(xué)生成績(jī)信息表(c語(yǔ)言程序)_第4頁(yè)
學(xué)生成績(jī)信息表(c語(yǔ)言程序)_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、# include<stdio.h># include<stdlib.h># include<string.h>typedef struct studentint ij;char no10;char name10;float score2;float average;student;typedef struct linkstudent ia;struct link*next; List;List *input0() /錄入數(shù)據(jù)List *p;student x;p=NULL;x.average=0;int i=0;float y=0; fflush(stdi

2、n); puts("t請(qǐng)輸入學(xué)生學(xué)號(hào):(輸0結(jié)束)"); gets(x.no);if(strcmp(x.no,"0")!=0)puts("t請(qǐng)輸入學(xué)生姓名:");gets();puts("t請(qǐng)輸入數(shù)學(xué)成績(jī):");scanf("%f",&x.score0);y=y+x.score0;puts("t請(qǐng)輸入英語(yǔ)成績(jī):");scanf("%f",&x.score1);y=y+x.score1;x.average=y/2.0;p=(Lis

3、t *)malloc(sizeof(List);strcpy(p->ia.no,x.no);strcpy(p->,);for(i=0;i<2;i+) p->ia.scorei=x.scorei;p->ia.average=x.average;p->next=NULL; return p;List *creat_List() /創(chuàng)建鏈表 int ix;List *head,*p,*tail;head=(List*)malloc(sizeof(List);head->next=NULL;tail=head;p=input0();

4、while(p!=NULL) tail->next=p;tail=p;tail->next=NULL;p=input0(); return head; void output_List(List *head) /遍歷鏈表 int i;int ii=1;List *p=head->next; puts("t序號(hào)t學(xué) 號(hào)t姓 名t數(shù)學(xué)t英語(yǔ)t平均成績(jī)");while(p!=NULL) printf("t%d",ii);ii+; printf("t%s",p->ia.no); printf("t%s&quo

5、t;,p->); for(i=0;i<2;i+) printf("t%-4.1f",p->ia.scorei);printf("t%-4.1fn",p->ia.average);p=p->next; List *input1() /插入數(shù)據(jù)的學(xué)生信息 List *p;char ix10;int i=0;float y=0; fflush(stdin);puts("請(qǐng)輸入學(xué)生學(xué)號(hào):"); gets(ix);p=(List *)malloc(sizeof(List);strcpy(p->i

6、a.no,ix); puts("t請(qǐng)輸入學(xué)生姓名:");gets(p->);puts("t請(qǐng)輸入數(shù)學(xué)成績(jī):");scanf("%f",&p->ia.score0);y=y+p->ia.score0;puts("t請(qǐng)輸入英語(yǔ)成績(jī):");scanf("%f",&p->ia.score1);y=y+p->ia.score1;p->ia.average=y/2.0;p->next=NULL;return p; void insert

7、_List(List *head,List *p) /鏈表的插入List *q,*s; s=(List *)malloc(sizeof(List);s=p;q=head;while(strcmp(q->next->ia.no,s->ia.no)<=0)q=q->next;if(q->next=NULL) break; s->next=q->next;q->next=s;List *output0(List *p) /輸出某位學(xué)生的信息 int i; puts("t學(xué) 號(hào)t姓 名t數(shù)學(xué)t英語(yǔ)t平均成績(jī)"); printf(

8、"t%s",p->ia.no); printf("t%s",p->); for(i=0;i<2;i+)printf("t%-4.1f",p->ia.scorei);printf("t%-4.1fn",p->ia.average);return p; void find1_List(List *head) / 查找學(xué)生信息 List *p;char ix10;int ii=0;fflush(stdin);p=head->next;puts("請(qǐng)輸入學(xué)生學(xué)號(hào):

9、"); gets(ix);while(1)if(p=NULL) if(ii=0) puts("不存在此學(xué)號(hào)的學(xué)生信息"); break; break; while(strcmp(ix,p->ia.no)=0) output0(p); if(p->next=NULL) break; p=p->next; ii+; p=p->next; List *find2(List *head) /查找指定節(jié)點(diǎn) List *p;char ix10;fflush(stdin);p=head->next;puts("輸入查找學(xué)生的學(xué)號(hào):&quo

10、t;); gets(ix);while(p!=NULL&&strcmp(ix,p->ia.no)!=0) p=p->next; return p; List *delete_List(List *head,List *p) /鏈表的刪除 List *q=head,*s=head->next;while(s!=NULL&&strcmp(p->ia.no,s->ia.no)!=0) q=s; s=s->next; q->next=s->next; free(s); return head; int length_Lis

11、t(List *head) /鏈表長(zhǎng)度 List *p=head;int ii=0; while(p->next!=NULL) p=p->next; ii+; return ii; List *find3(List *head,int ij) /查找指定節(jié)點(diǎn) List *p;int ii;fflush(stdin);p=head->next;while(p!=NULL&&ii!=ij) ii+;p=p->next; return p; List *paixu(List *head) /*排序*/List *p,*q,*large;float itemp;

12、int i;char ctemp10;for(p=head->next;p->next!=NULL;p=p->next)for(q=p->next;q!=NULL;q=q->next)large=p;if(p->ia.average<q->ia.average)large=q;if(large=q)strcpy(ctemp,p->ia.no);strcpy(p->ia.no,q->ia.no);strcpy(q->ia.no,ctemp);strcpy(ctemp,p->);strcpy(p->i

13、,q->);strcpy(q->,ctemp);for(i=0;i<2;i+)itemp=p->ia.scorei; p->ia.scorei=q->ia.scorei;q->ia.scorei=itemp; itemp=p->ia.average; p->ia.average=q->ia.average;q->ia.average=itemp;return(head);int menu() /鏈表菜單 int ii=0; puts("tt 歡迎進(jìn)入鏈表系統(tǒng)"); pu

14、ts("="); /*界面設(shè)計(jì)*/ puts("|tt 請(qǐng)選擇下列某一項(xiàng) ttt|"); puts("|ttt(1)創(chuàng)建 ttt|"); puts("|ttt(2)序號(hào)輸出ttt|"); puts("|ttt(3)查找 ttt|"); puts("|ttt(4)插入 ttt|"); puts("|ttt(5)刪除 ttt|"); puts("|ttt(6)成績(jī)輸出ttt|"); puts("|ttt(7)退出 ttt|&quo

15、t;); puts("="); do fflush(stdin); puts("請(qǐng)輸入你的選擇:"); scanf("%d",&ii); while(ii<1|ii>7); return ii;void main() int ii,I,ij,ix,in;List *head,*p;do system("cls"); /*清屏函數(shù)*/ fflush(stdin); /*清除鍵盤(pán)緩沖區(qū)*/ ii=menu(); switch(ii) case 1: head=creat_List(); puts("錄入成功"); break; case 2: output_List(head); break; case 3: find1_List(head); break; case 4: p=input1(); insert_List(head,p); puts("插入成功"); break; case 5: p=find2(head)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論