C语言课程设计学生成绩管理系统设计

上传人:博****1 文档编号:485317090 上传时间:2023-07-10 格式:DOC 页数:18 大小:71.50KB
返回 下载 相关 举报
C语言课程设计学生成绩管理系统设计_第1页
第1页 / 共18页
C语言课程设计学生成绩管理系统设计_第2页
第2页 / 共18页
C语言课程设计学生成绩管理系统设计_第3页
第3页 / 共18页
C语言课程设计学生成绩管理系统设计_第4页
第4页 / 共18页
C语言课程设计学生成绩管理系统设计_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《C语言课程设计学生成绩管理系统设计》由会员分享,可在线阅读,更多相关《C语言课程设计学生成绩管理系统设计(18页珍藏版)》请在金锄头文库上搜索。

1、学号10210411107武汉理工大学华夏学院课 程 设 计课程名称 C语言课程设计题 目 学生成绩管理系统的设计专 业 计算机班 级 1111姓 名 成 绩 指导教师 2012年2月13日至2012年2月17日课程设计任务书学生姓名: 专业班级:计算机1111指导教师: 工作单位: 设计题目:学生成绩管理系统的设计要求完成的主要任务:1. 任务描述 要求设计一个学生成绩管理的程序。实现:1、学生基本信息及所选科目成绩的录入;2、信息的查询(分系、班级;分科目)与修改;3、对每个系每个班各科成绩进行分析(即求单科平均成绩、及格率和优秀率);4、对所开课程的成绩分析(求其平均成绩,最高分和最低分

2、);5、对考生考试成绩进行排名。2. 本课程涉及的知识点 变量的定义、输入和输出函数、产生随机数函数、if语句、数据文件及其他相关的函数等。 3. 要求完成的任务 完成整个规定任务的设计及调试,得出正确结果,并经教师检查及答辩; 写出规范的课程设计说明书; 课程设计结束后交设计说明书等文档和设计内容。 从2月14日起,学生每天至少要到设计教室半天以上; 设计报告撰写格式要求:设计报告的主要内容是详细写出在设计过程中所用到的主要技术或方法;课程设计报告按国际通用格式书写,具体格式要求请见资料:“课程设计说明书的书写内容与格式”时间安排:第一天: 学生先在实验室集中,由指导教师介绍课程设计的目的、

3、布置任务后选题;第二天-第四天:学生在实验室完成设计,经教师检查并回答提问,确认设计完成;第五天: 教师在计算机上先检查设计报告、学生修改后打印提交指 导 教 师 签 字: 2012年2月 13日系 主 任 签 字: 2012年2月 13日- 1 -流程图设计考试成绩管理系统管理员输入学生的资料所有学生的总分和平均分所有课程的平均分按平均分排序按学号查询学生的各科成绩及平均成绩修改学生信息删除学生信息程序代码#include #include #include #define LEN sizeof(struct scorenode)#define DEBUG#include struct sc

4、orenodeint number;/*学号*/char name10;/*姓名*/float yuwen;/*语文成绩*/float yingyu;/*英语成绩*/float shuxue;/*数学成绩 */float save;/*平均成绩 */struct scorenode *next;typedef struct scorenode score;int n,k;/*n,k score *creat(void)/*函数creat,功能:创建链表,此函数带回一个指向链表头的指针*/score*head;score *p1,*p2,*p3,*max,*p;int i,j;float fen

5、; char t10;FILE *fp;char filepn20;/*用来存放文件保存路径以及文件名*/n=0; p1=p2=p3=(score *)malloc(LEN);head=p3; /*开辟一个新单元*/ printf(请输入学生资料,输0退出!n);repeat1: printf(请输入学生学号(学号应大于0):);/*输入学号,学号应大于0*/ scanf(%d,&p1-number);if(p1-number=0) goto end;/*当输入的学号为0时,转到末尾,结束创建链表*/else p3=head;if(n0) for(i=0;inumber!=p3-number)

6、 p3=p3-next; else printf(学号重复,请重输!n); goto repeat1; /*当输入的学号已经存在,程序报错,返回前面重新输入*/ printf(请输入学生姓名:); scanf(%s,&p1-name);/*输入学生姓名*/ printf(请输入语文成绩(0100):);/*输入语文成绩,成绩应在0-100*/ scanf(%f,&p1-yuwen); while(p1-yuwenyuwen100)getchar();printf(输入错误,请重新输入语文成绩);/*输入错误,重新输入语文成绩直到正确为止*/ scanf(%f,&p1-yuwen); print

7、f(请输入英语成绩(0100):);/*输入英语成绩,成绩应在0-100*/ scanf(%f,&p1-yingyu); while(p1-yingyuyingyu100)getchar();printf(输入错误,请重新输入英语成绩);/*输入错误,重新输入英语成绩直到正确为止*/ scanf(%f,&p1-yingyu); printf(请输入数学成绩(0100):);/*输入数学成绩,成绩应在0-100*/ scanf(%f,&p1-shuxue); while(p1-shuxueshuxue100)getchar();printf(输入错误,请重新输入数学成绩); scanf(%f,&

8、p1-shuxue);/*输入错误,重新输入数学成绩直到正确为止*/ head=NULL;while(p1-number!=0) n=n+1;if(n=1) head=p1;else p2-next=p1; p2=p1; p1=(score *)malloc(LEN); printf(请输入学生资料,输0退出!n);repeat2:printf(请输入学生学号(学号应大于0):); scanf(%d,&p1-number);/*输入学号,学号应大于0*/ while(p1-numbernumber); /*输入学号为字符或小于0时,程序报错,提示重新输入学号*/if(p1-number=0)

9、goto end;/*当输入的学号为0时,转到末尾,结束创建链表*/elsep3=head;if(n0) for(i=0;inumber!=p3-number) p3=p3-next; else printf(学号重复,请重输!n); goto repeat2; /*当输入的学号已经存在,程序报错,返回前面重新输入*/ printf(请输入学生姓名:); scanf(%s,&p1-name);/*输入学生姓名*/ printf(请输入语文成绩(0100):); scanf(%f,&p1-yuwen);/*输入语文成绩,成绩应在0-100*/ while(p1-yuwenyuwen100)get

10、char(); printf(输入错误,请重新输入语文成绩); scanf(%f,&p1-yuwen);/*输入错误,重新输入语文成绩直到正确为止*/ printf(请输入英语成绩(0100):); scanf(%f,&p1-yingyu);/*输入英语成绩,成绩应在0-100*/ while(p1-yingyuyingyu100)getchar(); printf(输入错误,请重新输入英语成绩); scanf(%f,&p1-yingyu);/*输入错误,重新输入英语成绩直到正确为止*/ printf(请输入数学成绩(0100):); scanf(%f,&p1-shuxue);/*输入数学成绩

11、,成绩应在0-100*/ while(p1-shuxueshuxue100)getchar(); printf(输入错误,请重新输入数学成绩); scanf(%f,&p1-shuxue);/*输入错误,重新输入数学成绩直到正确为止*/ end: p1=head; p3=p1;for(i=1;in;i+) for(j=i+1;jnext; if(max-numberp1-number) k=max-number; max-number=p1-number; p1-number=k; /*交换前后结点中的学号值,使得学号大者移到后面的结点中*/ strcpy(t,max-name); strcpy(max-name,p1-name); strcpy(p1-name,t); /*交换前后结点中的姓名,使之与学号相匹配*/ fen=max-yuwen; max-yuwen=p1-yuwen; p1-yuwen=fen; /*交换前后结点中的语文成绩,使之与学号相匹配*/ fen=max-ying

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号