1、t2-显示成绩nt3-成绩查询;t4-删除成绩nt5-排列成绩;t6-插入成绩nt7-在文件中保存成绩;t0-退出n*n请选择(0-7): -char choice() -char select;/ while( !_kbhit(); select=getche();return (select);-STUDENT *create() -STUDENT *head,*p1,*p2;p1=p2=(STUDENT *)malloc(LEN);scanf(%ld %s %d %d %d,&p1-num,p1-name,&math,&english,&chengxu);average=(p1-math
2、+p1-english+p1-chengxu)/3;head=NULL;while (p1-num!=0) - n+; if(n=1) - head=p1; else - p2-next=p1; p2=p1; p1=(STUDENT *) malloc(LEN); scanf( p1-p2-next=NULL;free(p1);return(head);void print(STUDENT *head) -STUDENT *p;p=head;if(head!=NULL) - do - -%ldt%st%dt%dt%dt%dn, p-num, p-name,p-math,p-english,p-
3、chengxu,p-average); p=p-next; while(p!=NULL);void search(STUDENT *head,char nam) -STUDENT *p5;if(head=NULL) -nlist null!np5=head;while(strcmp(p5-name,nam)&p5-next! p5=p5-if(strcmp(p5-name,nam)=0) -n该同学成绩为:学号t姓名t数学t英语t程序t平均分n,p5-num, p5-name,p5-math,p5-english,p5-chengxu,p5-STUDENT *del(STUDENT *head
4、,long num) -STUDENT *p6,*p7;n list null!=n return (head);p6=head;while(num!=p6-num &p6- p7=p6; p6=p6-if(num=p6-num) - if(p6=head) - head=p6- p7-next=p6- printf (delete: %ld n, num); n-;else -%ld not been found! return(head);STUDENT *sort(STUDENT *head) -STUDENT *temp,*t,*p3,*p4; temp=head;while(temp
5、! t=temp; temp=temp- if(head!=NULL&head-averageaverage) - p3=head; while(p3!p3- p4=p3; p3=p3- - t-next=p3; p4-next=t;next=head; head=t;STUDENT *insert( STUDENT *head, STUDENT *stud) - STUDENT *p3,*p4;stud- stud-next=stud; head=stud;n+;return (head);void save(STUDENT *head) - FILE *fp; STUDENT *p; fp
6、=fopen(d:student.txt,wb if(fp=NULL) -无法打开! exit(0); p=head;while(p! fwrite(p,LEN,1,fp);fclose(fp);STUDENT *load() -FILE *fp; STUDENT *q,*head=NULL;fp=fopen(rb return head; while(!feof(fp) - q=(STUDENT *)malloc(LEN); if(fread(q,LEN,1,fp)=1) - q- head=q; fclose(fp);-int main(int argc, char *argv) -STU
7、DENT *head,*stu;long del_num;char select,nam5;select=0;head=load();while(select!=0) - system(cls menu(); select=choice(); switch(select) - case :n您选择的是退出! _beep(300,400); continue;1n您选择的是成绩输入!n请输入成绩!学号t姓名t数学t英语t程序n head=create(); break;2n您选择的是显示成绩!n全部成绩为: print(head);3n您选择的是成绩查询!n请输入要查寻的姓名:%s,nam);
8、search(head,nam);4n您选择的是删除成绩!n请输入要删除同学的学号:%lddel_num); head=del(head,del_num);n删除后所有成绩为:5n您选择的是排列成绩! head=sort(head);n排列后的所有成绩为:6n您选择的是插入成绩!n请输入插入成绩的信息! stu=(STUDENT *)malloc(LEN);stu-num,stu- stu-average=(stu-math+stu-english+stu- head=insert(head,stu);n插入后所有成绩为:7n您选择的是在文件中保存成绩! save(head);n保存成功! d
9、efault:n您的选择是错误的!PAUSE return (0); 标签 printf head student average 学号 举报字体:大 小中大分享转载复制地址 日志地址:请用Ctrl+C复制后贴给好友。转发到微博签名档修改 发表 取消已经是第一篇下一篇:一个含冤而死的农.|返回日志列表评论隐藏评论签名全选删除取消批量删除批量删除看完此日志,是不是也有很多感受,赶快点评一下吧。主人很期待哦!关闭提示还没有人发表评论 来坐第一个沙发提示腾讯公司温馨提示:当前已出现通过网络、电话和短信等途径假冒中奖网站、“400”“0898”开头电话、宣称低价购物、购房退税等手段诈骗,请您提高警惕,慎防遭骗。识别更多网络骗术,请点击:腾讯反骗术帮助中心。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1