成绩管理课程设计报告

上传人:aa****6 文档编号:38152245 上传时间:2018-04-27 格式:DOC 页数:16 大小:400.50KB
返回 下载 相关 举报
成绩管理课程设计报告_第1页
第1页 / 共16页
成绩管理课程设计报告_第2页
第2页 / 共16页
成绩管理课程设计报告_第3页
第3页 / 共16页
成绩管理课程设计报告_第4页
第4页 / 共16页
成绩管理课程设计报告_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《成绩管理课程设计报告》由会员分享,可在线阅读,更多相关《成绩管理课程设计报告(16页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告课程设计报告课程设计题目:成绩管理课程设计题目:成绩管理学生姓名:学生姓名: xx 专专 业:业:xxx班班 级:级:xxx指导教师:指导教师: xx20xx 年年 x 月月 x 日日东华理工大学课程设计评分表学生姓名: xx 班级: xxxx 学号:xxxxx课程设计题目:成绩管理项目内容满分实 评能结合所学课程知识、有一定的能力训练。符合选题要求 (5 人一题)10选 题工作量适中,难易度合理10能熟练应用所学知识,有一定查阅文献及运用文献资料能力10理论依据充分,数据准确,公式推导正确10能应用计算机软件进行编程、资料搜集录入、加工、排版、 制图等10能 力 水 平 能体现创

2、造性思维,或有独特见解10总体设计正确、合理,各项技术指标符合要求。10 说明书综述简练完整,概念清楚、立论正确、技术用语准确、 结论严谨合理;分析处理科学、条理分明、语言流畅、结构 严谨、版面清晰10设计说明书栏目齐全、合理,符号统一、编号齐全。 格式、 绘图、表格、插图等规范准确,符合国家标准10成 果 质 量有一定篇幅,字符数不少于 500010总 分100指导教师评语:指导教师签名:年 月 日实验题目:成绩管理实验题目:成绩管理1、实验目的实验目的1.掌握线性表的创建及基本操作; 2.掌握基本排序 3.复习文件相关的操作 (1)用顺序结构表示成绩单,完成任务(1)(6) ,成绩为及格;

3、(2)用链表表示成绩单,完成任务(1)(6) ,且软件容错能力强,成绩为中等。2、实验内容实验内容问题描述:给出 n 个学生的考试成绩表,成绩表包括学生的学号、姓名、考试成绩(高 等数学、英语、物理) ,设计一个简单的成绩管理程序。基本要求:(1)建立成绩表,能 够插入、删除、修改学生的成绩记录;(2)按任一单科成绩排序;(3) 计算每名学生的平 均成绩;(4) 统计任一单科成绩不及格的学生人数, 输出不及格人数及不及格的学生名单 (5) 根据平均成绩将成绩表按由高到低的次序排列,统计每名学生在考试中获得的名次, 分数相同的为同一名次,按名次输出成绩表。(6) 成绩表保存在文件中, 可以从文件

4、读取 数据。3、实验设计实验设计1.定义单链表存储结构typedef struct Student char ID12;char name20;int c1;int c2;int c3;Student *next; Student; 2.建立成绩表及其涉及的相关函数 Student *AppendNode(Student *head);/增加 void DisLink(Student *head);/显示 Student *InsertNode(Student *head);/插入 Student *DelNode(Student *head);/删除 Student *alter(Stude

5、nt *head);/修改 Student *Start(Student *head);/初始赋值 Student *Com(Student *head);/排序 Student *ReadData(Student *head);/读取数据 void SaveData(Student *head);/存储数据 Void mathcount(student *head);/统计高数不及格人数 3.具体程序代码#include #include#include typedef struct Student char ID12;char name20;int c1;int c2;int c3;Stu

6、dent *next; Student;Student *AppendNode(Student *head);/增加 void DisLink(Student *head);/显示 Student *InsertNode(Student *head);/插入 Student *DelNode(Student *head);/删除 Student *alter(Student *head);/修改 Student *Start(Student *head);/初始赋值 Student *Com(Student *head);/冒泡排序 Student *ReadData(Student *hea

7、d);/读取数据 void SaveData(Student *head);/存储数据 void mathcount(Student *head);/统计高数不及格人数int main() int a;Student *head=NULL;int k=1;head=ReadData(head);/先读文件if (head=NULL)/如果不存在的话创建数据head=Start(head);while(k)DisLink(head);/数据多的话不必每次都显示printf(“1 增加数据n“);printf(“2 插入数据n“);printf(“3 修改数据n“);printf(“4 删除排序n

8、“);printf(“5 排序数据n“);printf(“6 显示数据n“);printf(“7 统计高数不及格人数n“);printf(“8 退出n“);printf(“选择:“);scanf(“ %d“,switch(a)case 1:head=AppendNode(head); break;case 2:head=InsertNode(head);break;case 3:head=alter(head);break;case 4:head=DelNode(head);break;case 5:head=Com(head);break;case 6:break;case 7:mathco

9、unt(head);break;case 8:k=0;break;default:printf(“请输入有效选择!n“); SaveData(head);return 0;Student *Start(Student *head) Student *p=NULL;Student *pr=head;p=(Student *)malloc(sizeof(Student);head=p;pr=p;strcpy(pr-ID,“);strcpy(pr-name,“Bener“);pr-c1=98;pr-c2=99;pr-c3=95;p=(Student *)malloc(sizeof(Student);

10、pr-next=p;pr=pr-next;strcpy(pr-ID,“);strcpy(pr-name,“大雄“);pr-c1=67;pr-c2=73;pr-c3=59;p=(Student *)malloc(sizeof(Student);pr-next=p;pr=pr-next;strcpy(pr-ID,“);strcpy(pr-name,“胖虎“);pr-c1=64;pr-c2=69;pr-c3=75;p=(Student *)malloc(sizeof(Student);pr-next=p;pr=pr-next;strcpy(pr-ID,“);strcpy(pr-name,“静香“);

11、pr-c1=95;pr-c2=91;pr-c3=89; p=(Student *)malloc(sizeof(Student);pr-next=p;pr=pr-next;strcpy(pr-ID,“);strcpy(pr-name,“康夫“);pr-c1=46;pr-c2=75;pr-c3=88;pr-next=NULL;return head; void DisLink(Student *head) Student *p=head;int j=1;printf(“序号 学号 名字 高数 英语 物理 平均分n“);while(p!=NULL) printf(“%3d%10s%10s%6d%6d

12、%6d%8.2fn“,j,p-ID,p-name,p-c1,p-c2,p-c3,(p- c1+p-c2+p-c3)/3.0);p=p-next;j+; Student *AppendNode(Student *head) Student *p=NULL;Student *pr=head;char ID12;char name20;int c1;int c2;int c3;p=(Student *)malloc(sizeof(Student);if(p=NULL)printf(“No enough memory to alloc“);exit(0);else if(head=NULL)head=

13、p;elsewhile(pr-next!=NULL)pr=pr-next;pr-next=p;pr=p;printf(“请输入学号:“);scanf(“ %s“,printf(“请输入名字:“);scanf(“ %s“,printf(“请依次输入高数,英语,物理成绩:“);scanf(“ %d%d%d“,strcpy(pr-ID,ID);strcpy(pr-name,name);pr-c1=c1;pr-c2=c2;pr-c3=c3;pr-next=NULL;return head; void DeleteMemory(Student *head) Student *p=head,*pr=NULL;while(p!=NULL)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 毕业论文

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