ImageVerifierCode 换一换
格式:DOCX , 页数:32 ,大小:20.83KB ,
资源ID:5237941      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5237941.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(学生综合测评系统.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

学生综合测评系统.docx

1、学生综合测评系统# include # include stdlib.h # include string.h#include struct student *Read();void save(struct student *head);void sinput(struct student *p);struct student *input();void paixu_num(struct student *head);struct student *insert();struct student *alter();struct student *del();void find_num(stru

2、ct student *phead);void find_name(struct student *phead);void output();void min_student(struct student *phead);void max_student(struct student *phead);void ave_student(struct student *phead);void every_student(struct student *phead);void score_paixu(struct student *head);void help();void tj_menu(str

3、uct student *head);void find_menu(struct student *head);void menu();struct student/定义学生信息结构数组,用于学生信息输入 char number13; char name13; char sex4; char adds15; char phone14; char qq14; float chinese,math,english,txhp,pinde,teacher; int zcmc,ksmc; double ave,zc; struct student *next;#define Len sizeof(str

4、uct student)int len; /链表长度int a=0,b=0,c=0,d=0,e=0;/用来存放成绩各阶的人数char stu10;struct student *Read() /读取数据文件保存到链表中,返回指向此链表头指针 struct student *head=NULL; struct student *p1, *p2; FILE *fp; cout请输入你要打开的文件(.dat)stu; if(fp=fopen(stu,rb+)=NULL) cout打开文件出错!endl; exit(0); while(!feof(fp) if( (p1=(struct student

5、*)malloc(Len)=NULL ) cout内存申请出错next=p1; p2=p1; fclose(fp); return head;void save(struct student *head)/数据存盘 FILE *fp; struct student *p; p=head; cout请输入你要存进去的文件(.dat)stu; if(fp = fopen(stu, wb)=NULL) cout无法打开文件!endl; system(pause); menu(); while(p) if(fwrite(p,Len,1,fp)!=1) cout写入数据出错next; cout数据存入成

6、功!请按任意键继续!endl; getchar(); fclose(fp);/单次输入void sinput(struct student *p)cout请输入学号:p-number;cout请输入姓名: p-name;cout请输入性别: p-sex;cout请输入家庭住址: p-adds;cout请输入联系电话: p-phone;cout请输入qq: p-qq;cout请输入语文成绩:p-chinese;if(p-chinese100|p-chinese0)cout成绩输入不符合规定,请重新输入:p-chinese;cout请输入数学成绩:p-math;if(p-math100|p-mat

7、h0)cout成绩输入不符合规定,请重新输入:p-math;cout请输入英语成绩:p-english;if(p-english100|p-english0)cout成绩输入不符合规定,请重新输入:p-english;cout请输入同学互评分:p-txhp;if(p-txhp100|p-txhp0)cout成绩输入不符合规定,请重新输入:p-txhp;cout请输入品德成绩:p-pinde;if(p-pinde100|p-pinde0)cout成绩输入不符合规定,请重新输入:p-pinde;cout请输入任课教师评分:p-teacher;if(p-teacher100|p-teacher0)c

8、out成绩输入不符合规定,请重新输入:p-teacher;p-ave=(p-chinese+p-math+p-english)/3.0;p-zc=(p-ave*0.6+p-txhp*0.1+p-pinde*0.2+p-teacher*0.1);coutendl;coutendl;cout你刚输入的信息为:endl;couttt学号:numberendl;couttt姓名:nameendl;couttt性别:sexendl;couttt家庭住址:addsendl;couttt联系电话:phoneendl;coutttQQ号:qqendl;couttt语文成绩:chineseendl;couttt

9、数学成绩:mathendl;couttt英语成绩:englishendl;couttt品德成绩:pindeendl;couttt教师评分:teacherendl;coutendl; return;/学生成绩录入函数struct student *input() struct student *head=NULL,*p1,*p2;/输入p1,p2链表最后节点 char ch=y; len=1; p2=p1=(struct student *)malloc(sizeof(struct student); cout请输入第len个学生的信息:endl; sinput(p1); coutendl; c

10、out按n退出或按任意键继续ch; while(1) if(len=1)/作为头结点 head=p1; else p2-next=p1; p2=p1; if(ch=N|ch=n) break; p1=(struct student *)malloc(sizeof(struct student); system(cls); len+; cout请输入第len个学生的信息:endl; sinput(p1); coutendl; cout按n退出或按任意键继续ch; p2-next=NULL; paixu_num(head); cout输入学生信息完成!请按任意键返回主菜单!endl; getcha

11、r(); return head;/学号排序void paixu_num(struct student *head) struct student t,*r,*p,*q;/t交换p、q,r头结点 r=head; if(r=NULL) cout学生信息不存在,请先输入学生信息!next; while(q) if(strcmp(q-number,p-number)0) /qnumber); strcpy(t.name,q-name); strcpy(t.sex,q-sex); strcpy(t.adds,q-adds); strcpy(t.phone,q-phone); strcpy(t.qq,q

12、-qq); t.chinese=q-chinese; t.math=q-math; t.english=q-english; t.txhp=q-txhp; t.pinde=q-pinde; t.teacher=q-teacher; strcpy(q-number,p-number); strcpy(q-name,p-name); strcpy(q-sex,p-sex); strcpy(q-adds,p-adds); strcpy(q-phone,p-phone); strcpy(q-qq,p-qq); q-chinese=p-chinese; q-math=p-math; q-english=

13、p-english; q-txhp=p-txhp; q-pinde=p-pinde; q-teacher=p-teacher; strcpy(p-number,t.number); strcpy(p-name,t.name); strcpy(p-sex,t.sex); strcpy(p-adds,t.adds); strcpy(p-phone,t.phone); strcpy(p-qq,t.qq); p-chinese=t.chinese; p-math=t.math; p-english=t.english; p-txhp=t.txhp; p-pinde=t.pinde; p-teacher

14、=t.teacher; q=q-next; r=r-next; /插入函数struct student *insert() struct student *p,*p1,*head; head=Read(); p1=head; p=(struct student *)malloc(sizeof(struct student); char num14,ch; cout请输入你要插入的前一个学生的学号:num; while(p1) if(!strcmp(p1-number,num) sinput(p); p-next=p1-next; p1-next=p; len+; else p1=p1-next

15、; cout按n退出或按任意键继续ch; if(ch=N|ch=n) break; cout学生信息插入成功!请按任意键返回!endl; getchar(); return head;/修改学生信息struct student *alter() char temp13; struct student *p,*head; head=Read(); p=head; couttemp; while(p) if(!strcmp(p-number,temp) sinput(p); p=p-next; coutendl;cout学生信息修改成功!请按任意键返回!endl;coutendl;system(p

16、ause);return head;/删除学生信息struct student *del() char temp13; int m=0; struct student *p1,*p,*head;/p1删除 head=Read(); p1=p=head; cout请输入你要删除学生的学号:temp; while(p) if(strcmp(p1-number,temp)=0) if(p1=head)/删除的头结点 head=p1-next; else p-next=p1-next; len-; m=1; cout学生信息删除成功!请按任意键返回主菜单.next; if(!m) cout查找不到这个

17、信息!endl; return head;void find_num(struct student *head)/按学号查找 struct student *p=head; char temp9; int m = 0; cout请输入要查找的学生的学号temp;while(p!=NULL) if(strcmp(p-number,temp) = 0) cout该学生的具体信息为:endl;coutendl;coutendl;couttt学号:numberendl;couttt姓名:nameendl;couttt性别:sexendl;couttt家庭住址:addsendl;couttt联系电话:p

18、honeendl;coutttQQ号:qqendl;couttt语文成绩:chineseendl;couttt数学成绩mathendl;couttt英语成绩englishendl;couttt平均成绩aveendl;couttt品德成绩pindeendl;couttt老师评分teacherendl;couttt综合成绩zcendl;score_paixu(head);couttt考试名次ksmcendl;couttt综测名次zcmcendl;coutendl;coutnext;/继续向下寻找 if(!m) cout查找不到这个学号的信息!endl; cout按任意键返回主菜单endl; get

19、char(); return ;void find_name(struct student *head)/按姓名查找 struct student *p= head; char temp9; int m = 0; cout请输入要查找的学生的姓名temp;while(p) if(strcmp(p-name,temp) = 0) cout该学生的具体信息为:endl;coutendl; coutendl; cout学号:numberendl;couttt姓名:nameendl;couttt性别:sexendl;couttt家庭住址:addsendl;couttt联系电话:phoneendl;co

20、utttQQ号:qqendl;couttt语文成绩:chineseendl;couttt数学成绩mathendl;couttt英语成绩englishendl;couttt平均成绩aveendl;couttt品德成绩pindeendl;couttt老师评分teacherendl;couttt综合成绩zcendl;score_paixu(head);couttt考试名次ksmcendl;couttt综测名次zcmcendl;coutendl;coutnext; if(!m) cout查找不到这个学号的信息!endl; cout按任意键返回主菜单endl; getchar(); return ;vo

21、id output() struct student *p,*head; head=Read(); p=head; int i=1; while(p) coutendl;couttt学号:numberendl;couttt姓名:nameendl;couttt性别:sexendl;couttt家庭住址:addsendl;couttt联系电话:phoneendl;coutttQQ号:qqendl;couttt语文成绩:chineseendl;couttt数学成绩:mathendl;couttt英语成绩:englishendl;couttt品德成绩:pindeendl;couttt老师评分:teacherendl;couttt平均成绩:aveendl;couttt综合成绩:zcendl;score_paixu(head);couttt考试名次ksmcendl;couttt综合测评名次zcmcnext;i+; coutendl; coutendl; cout请按任意键返回主菜单endl; getchar(); return ;void max_student(struct student *head)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1