C语言数据库-学生成绩统计管理系统.pdf
《C语言数据库-学生成绩统计管理系统.pdf》由会员分享,可在线阅读,更多相关《C语言数据库-学生成绩统计管理系统.pdf(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 学生成绩统计管理系统C 语言数据结构课程作品指导老师:学生:学号:班级:2 一、代码#include#include#include#include#include#include#include#includestruct gradeint score;struct grade*next;/*定义成绩的结构*/struct address char stu_num4;/*学号*/char hname10;/*性别*/char ename20;/*姓名*/char depart30;/*系别*/char paddress30;/*地址*/char phone13/*联系电话*/;struc
2、t grade*head;struct address*next;void loaddata(struct address*had);void printm(struct address*head);struct address*seek(struct address*head);void revise(struct address*hp);void delate(struct address*head);void saveda(struct address*tou);void addnew(struct address*had);void moveg(int i,struct grade*m
3、ove);void gotoxy(int x,int y);void sortp(struct address*head);int main(void )char ch;int c;3 struct address*head=NULL;loaddata(&head);do system(cls);printf(n);printf(学生信息与成绩统计:n);printf(岳鹏程制作n);printf(=n);printf(Menu:n);printf(1:print all the personal information.n);printf(2:insert some or one perso
4、n.n);printf(3:revire some information.n);printf(4:delate some information or a person.n);printf(5:exit.n);printf(=n);printf(tInput:);do scanf(%d,&c);getchar();while(c6);switch (c)case 1:printm(head);break;case 2:addnew(&head);break;case 3:revise(head);4 break;case 4:delate(&head);break;break;case 5:
5、return 0;default:break;fflush(stdin);printf(continue or not:input y or nn);ch=getchar();saveda(head);while(ch=y|ch=Y);return 0;void loaddata(struct address*had)FILE*afhead;FILE*gfhead;struct address*p1,*hp1=NULL,*head=NULL;struct grade*p2,*hp2=NULL;int i=0;int j=6;if(!(afhead=fopen(d:,rb)return;if(!
6、(gfhead=fopen(d:,rb)return;while (!feof(afhead)p1=(struct address*)malloc(sizeof(struct address);fread(p1,sizeof(struct address),1,afhead);5 if(feof(afhead)if(!p1)free(p1);break;if(i=0)p1-next=NULL;p1-head=NULL;head=p1;hp1=p1;i+;/*使头指针指向第一个创建的节点*/else p1-next=NULL;p1-head=NULL;hp1-next=p1;hp1=hp1-ne
7、xt;*had=head;p1=*had;/*成绩是后进先出*/while (!feof(gfhead)do p2=(struct grade*)malloc(sizeof(struct grade);fread(p2,sizeof(struct grade),1,gfhead);p2-next=hp2;hp2=p2;j-;while(j 0);if(!feof(gfhead)&p1!=NULL)p1-head=hp2;p1=p1-next;6 fclose(afhead);fclose(gfhead);void printm(struct address*head)int i=0,j;flo
8、at iscore;struct grade*ghd=NULL;struct address*hd=NULL;hd=head;system(cls);if (hd=NULL)printf(tt=No sourse in the file!=);return ;while (hd!=NULL)gotoxy(1,i+1);printf(=n);for(j=0;jstu_num);gotoxy(30,i+2);printf(Name-spelling:%s,hd-ename);gotoxy(5,i+3);printf(Sex:%s ,hd-hname);gotoxy(30,i+3);printf(D
9、epartment:%s,hd-depart);gotoxy(5,i+4);printf(Address:%s ,hd-paddress);gotoxy(5,i+5);printf(Phone nummber:%sn,hd-phone);7 printf(n);printf(tHisHer score is:n);ghd=hd-head;printf(name 地理生物物理英语数学语文n);printf(%s ,hd-ename);while (ghd!=NULL)printf(%dt,ghd-score);iscore+=ghd-score;ghd=ghd-next;printf(n);hd
10、=hd-next;i=i+10;void delate(struct address*head)char cinput20;struct address*PRE,*TARGE;TARGE=(*head);if(!TARGE)printf(=No any information!);return;fflush(stdin);printf(Input the name or student nummber you want to delate:t);scanf(%s ,cinput);while(stricmp(cinput,TARGE-stu_num)&stricmp(cinput,TARGE-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 数据库 学生 成绩 统计 管理 系统
限制150内