已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言编写的简单学生成绩管理系统 C语言编写的简单学生成绩管理系统#include stdio.h#include stddef.h#include stdlib.h#include conio.h /*屏幕操作函数*/#include string.h#define MAX 10typedef struct studentchar nameMAX;char numMAX;char sexMAX;int age;int chinese;int mathematic;int english;float aver;struct student *next;stu;stu *head;void print() /*输出菜单*/textcolor(RED); /*设置文本显示颜色为红色*/textbackground(GREEN); /*设置背景颜色为绿色*/window(1,1,80,10); /* 制作显示菜单的窗口*/clrscr();printf( n);printf( * welcome to use student manage *n);printf( * MENU *n);printf( * Enter Record ); /*录入信息*/printf( Statistics *n); /*显示成绩*/printf( * Quest ); /*查询*/printf( Updata *n); /*修改*/printf( * Save ); /*保存到磁盘*/printf(Display *n); /*统计成绩*/printf( * Fresh ); /*刷新*/printf(Quit *n); /*退出系统*/printf( $ Maker: zhangwantong Class:045 Date:2007.01.12 $n);printf( n);void cin(stu *p1) /*录入学生信息 */ printf(Enter name:n);scanf(%s,p1-name);printf(Enter num:n);scanf(%s,p1-num);printf(Enter sex:n);scanf(%s,&p1-sex);printf(Enter age:n);scanf(%d,&p1-age);printf(Enter score:n);printf(Enter chinese:n);scanf(%d,&p1-chinese);printf(Enter math:n);scanf(%d,&p1-mathematic);printf(Enter English:n);scanf(%d,&p1-english);p1-aver=(p1-chinese+p1-mathematic+p1-english)/3.0; /*平均分*/void cindata() /*是否继续录入*/ stu *p1,*p2;int i=1;char ch;head=(stu *)malloc(sizeof(stu);p1=head; /*头指针*/while(i)cin(p1);printf(Do you Want to Continue?yes or no:);ch=getchar();ch=getchar();if(ch=n|ch=N) i=0;p1-next=NULL;else p2=p1;p1=(stu *)malloc(sizeof(stu);p2-next=p1;void lookdata(stu *p1) /*输出所有信息*/ printf(-n);while(p1!=NULL) printf(Num:%s ,p1-num);printf(Name:%s ,p1-name);printf(Sex:%s ,p1-sex);printf(Age:%d ,p1-age);/* printf(n); */printf(Chinese:%d ,p1-chinese);printf(Math:%d ,p1-mathematic);printf(English:%d ,p1-english);printf(Average:%fn,p1-aver);printf(-n);p1=p1-next;printf(-n);/*已经完成的任务:1.录入保存磁盘2.按姓名学号查询3.输出成绩表4.修改处理5.统计学生成绩*/void find1(stu *p2) /* 按姓名查找信息 */ char name20;int b=0;printf(Enter the name of the student you want to find:);scanf(%s,name);while(p2!=NULL)if(strcmp(name,p2-name)=0)printf(The data you want has be foundn);printf(-n);printf(Num:%st,p2-num);printf( Name:%st,p2-name);printf(sex:%st,p2-sex);printf(age:%dt,p2-age);printf(n);printf(Chinese:%dt,p2-chinese);printf(Math:%dt,p2-mathematic);printf(English:%dt,p2-english);printf(Average:%fn,p2-aver);printf(*n);b=1;p2=p2-next;if(b=1)printf(Find onen);elseprintf(Not findn);void find2(stu *p2) /* 按学号查找信息 */ char numMAX;int b=0;printf(Enter the num of the student you want to find:);scanf(%s,&num);while(p2!=NULL) if(strcmp(num,p2-num)=0) printf(The data you want has be foundn);printf(-n);printf(Num:%st,p2-num);printf( Name:%st,p2-name);printf(Sex:%st,p2-sex);printf(Age:%dt,p2-age);printf(n);printf(Chinese:%dt,p2-chinese);printf(Math:%dt,p2-mathematic);printf(English:%dt,p2-english);printf(Average:%fn,p2-aver);printf(*n);b=1;p2=p2-next;if(b=1)printf(Find onen);elseprintf(Not findn);void find() /*查询记录*/ int i;printf(Find with name Find with num Returnn);printf(Please Enter your choice:);scanf(%d,&i);switch(i) case 1:find1(head);break;case 2:find2(head);break;case 3:return;void update1(stu *p2) /*按姓名修改*/char name10;int b=0;printf(Enter The Name:);scanf(%s,name);while(p2!=NULL) if(strcmp(name,p2-name)=0) printf(Find you data!n);printf(Enter the new name:);scanf(%s,p2-name);printf(Enter the num:);scanf(%s,p2-num);printf(Enter the sex:);scanf(%s,p2-sex);printf(Enter the age:);scanf(%d,&p2-age);printf(Enter the chinese score:);scanf(%d,&p2-chinese);printf(Enter the math score:);scanf(%d,&p2-mathematic);printf(Enter the english score:);scanf(%d,&p2-english);p2-aver=p2-chinese+p2-mathematic+p2-english;printf(Success!n);b=1;p2=p2-next;if(b=0)printf(Sorry not Find data!n);elseprintf(Finish!n);void update2(stu *p2) /*按学号修改*/char numMAX;int b=0;printf(Enter The Num:);scanf(%s,&num);while(p2!=NULL) if(strcmp(num,p2-num)=0) printf(Find you data!n);printf(Enter the new name:);scanf(%s,p2-name);printf(Enter the num:);scanf(%s,p2-num);printf(Enter the sex:);scanf(%s,p2-sex);printf(Enter the age:);scanf(%d,&p2-age);printf(Enter the chinese score:);scanf(%d,&p2-chinese);printf(Enter the math score:);scanf(%d,&p2-mathematic);printf(Enter the english score:);scanf(%d,&p2-english);p2-aver=(p2-chinese+p2-mathematic+p2-english)/3.0;printf(Success!n);b=1;p2=p2-next;if(b=0)printf(Sorry not Find data!n);elseprintf(Finish!n);void update() /*修改记录*/ int i;printf(Updata with name Updata with num Returnn);printf(Please Enter your choice:);scanf(%d,&i);switch(i) case 1:update1(head);break;case 2:update2(head);break;case 3:return;void saved(stu *p2) /*保存到磁盘student.dat文件中*/FILE *fp;char file16=c:student.dat;char file1=num-name-sex-age-chinese-math-english-avern;if(fp=fopen(file,wt)=NULL) printf(nCannot open the file !n);return;fprintf(fp,%s,file1);while(p2!=NULL) fprintf(fp,%s-,p2-num);fprintf(fp,%s-,p2-name);fprintf(fp,%s-,p2-sex);fprintf(fp,%d-,p2-age);fprintf(fp,%d-,p2-chinese);fprintf(fp,%d-,p2-mathematic);fprintf(fp,%d-,p2-english);fprintf(fp,%fn,p2-aver);p2=p2-next;fclose(fp);printf(Saved successed!);void statistics(stu *p2) /*统计学生成绩*/ FILE *fp,*fp1;char file16=c:stufile.dat,file116=c:stugood.dat;if(fp=fopen(file,wt)=NULL) printf(nCannot open the file !n);return;if(fp1=fopen(file1,wt)=NULL) printf(nCannot open the file !n);return;while(p2!=NULL) if(p2-chineseenglishmathematicnum);fprintf(fp,%s-,p2-name);fprintf(fp,%s-,p2-sex);fprintf(fp,%d-,p2-age);fprintf(fp,%d-,p2-chinese);fprintf(fp,%d-,p2-mathematic);fprintf(fp,%d-,p2-english);fprintf(fp,%fn,p2-aver);p2=p2-next;else if(p2-chinese=90)&(p2-english=90)&(p2-mathematic=90) fprintf(fp1,%s-,p2-num);fprintf(fp1,%s-,p2-name);fprintf(fp1,%s-,p2-sex);fprintf(fp1,%d-,p2-age);fprintf(fp1,%d-,p2-chinese);fprintf(fp1,%d-,p2-mathematic);fprintf(fp1,%d-,p2-english);fprintf(fp1,%fn,p2-aver);p2=p2-next;elsep2=p2-next;fclose(fp);fclose(fp1);printf(Saved successed!);void print1() system(cls); /*清除整个屏幕*/void display2() /*显示不及格记录*/ FILE *fp;if(fp=fopen(c:STUFILE.DAT,r)=NULL) printf(Cannot open the file!);return;while(!feof(fp) putchar(fgetc(fp);printf(bSuccess!n);void display3() /*显示90分以上同学的记录*/ FILE *fp;if(fp=fopen(c:STUGOOD.DAT,r)=NULL) printf(Cannot open the file!);return;while(!feof(fp) putchar(fgetc(fp);printf(bSuccess!n);void display() /*显示记录*/ int i;printf(Display All Display Good Display Flunkn);printf(Plasce Enter your choice:);scanf(%d,&i);switch(i) case 1:lookdata(head);break;case 2:display3();break;case 3:display2();break;void interface() /*启动界面*/ clrscr();window(20, 5, 60, 15);textattr(BLUE+(LIGHTGRAY4);clrscr();cputs(nn Welcome to use student manage system! );cputs( Maker: zhangwantong );cputs( Class: 04-5 );cputs( Date : 2007.01.13 );cputs( Edit : V1.0 );cputs( Press ENTER key .);while(getchar()!=n) ;return;void interface2() /*退出界面*/ print1();win
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江西省轻工业高级技工学校工作人员招聘考试试题
- 2025江苏省赣榆中等专业学校金山校区工作人员招聘考试试题
- 幼儿园门口防撞设施安装施工组织设计
- 智能技术在区域教育管理协同中的创新应用与政策支持研究教学研究课题报告
- 危岩凹腔封填施工组织设计
- 2026年5G网络工业互联网创新报告
- 生物医药仿制药研发生产项目2025年技术创新与产品差异化可行性报告
- 基于深度学习的医疗影像诊断辅助系统开发与评估课题报告教学研究课题报告
- 家庭数字环境对学生数字技能培养的实践路径与效果评估教学研究课题报告
- 2026年设备智能运维技术行业报告
- 《低聚糖功能性质》课件
- 《森林植物》课件-03 榆科
- 华南理工大学《工程热力学》2023-2024学年第一学期期末试卷
- T-NBHTA 004-2024 热处理企业环境保护技术规范
- 08 西北地区(课件)-备战2025高考地理之中国地理主题探究式复习
- 2024年广西南宁市小升初数学试卷(含答案)
- 大学语文全套教学课件
- 《矿物岩石学教学课件》1-2 矿物学
- 压力管道培训课件
- 输液技术与临床应用
- 全国实验室安全知识竞赛试题库(附含答案)
评论
0/150
提交评论