- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《《C语言程序设计》综合性实验实验报告参考格式
综合性实验报告
课程名称: 《C语言程序设计》 实验题目: 班级成绩管理系统的设计与实现 姓名系 别专业班级指导教师—06月20日
一、实验目的和要求
实验目的
1、利用所学的三种程序基本结构以及数组、用户自定义函数进行一个小型程序的设计,进一步理解和掌握C语言的语法以及三种基本程序结构的综合应用。
2、通过程序中涉及到的排序、查找、求和等操作加深对算法、程序设计思路、常用程序设计技巧的理解与掌握,逐步培养学生的程序开发能力。
实验要求
1、根据实验内容,认真编写源程序代码、上机调试程序,书写实验报告。
2、分小组协作实验时,要写明每一位学生负责的实验内容。
二、设计要求
(一)学生信息和程序功能
给定的原始数据和程序应实现的功能是该C程序开发的依据,此实验只处理一个班级学生信息,最多学生数为120人。
1、学生信息和数据类型
最多学生人数和最多课程数定义为全局符号常量:
#define Mmax 120
#define Nmax 3
(1)学生信息
学生信息包含:学号,姓名,三门课(语文,数学,英语)成绩和总分。
(2)数据类型
学号、姓名、课程三个信息为char型,课程分数和总分为float型,其余为int型。其中,假设学号有10位数字字符(注意此时要求存储空间要11个字节),例如2011023102表示入学年份为2011年,023是专业编码,102是学生在班级中的排号。
2、测试数据
测试数据在定义数组时以初值形式提供,其中学生总成绩通过程序计算。
学号 姓名 语文 数学 英语 2011023001 Zhang 73.5 85 67 2011023002 Li 83 91.5 87 2011023003 Cheng 65 82 78 2011023004 Wang 71 83 80.5 但是,在用单链表处理学生信息时,要求直接从键盘上接收数据。
3、程序功能
(1)学生信息(学号、姓名、成绩等)的显示(数据结构要求用数组);
(2)按姓名查找学生(数据结构要求用数组);
(3)计算各门课程的平均分(数据结构要求用数组);
(4)计算学生总成绩,并按总成绩进行排序(数据结构要求用数组);
(5)按总成绩降序显示学生信息;
(6)学生记录的插入;
(7)用单链表(结构体)处理班级学生信息(学号、姓名、成绩等),包括学生信息输入(添加)、学生信息浏览、学生总成绩计算和将学生信息存入文件。
其中第(7)为选作内容,如果学生能够做出来,实验成绩应给予加分奖励。
(二)程序总体设计
1、数据结构
依据给定的学生信息和数据类型,定义相应的数组和结构体类型分别如下:
课程名称定义为全局数组:
char course[Nmax][50] = {Chinese,Mathematic,English};
学生结构体类型如下:
struct student
{
char code[11]; /* 学号 */
char name[20]; /* 姓名 */
float score[Nmax]; /* 各课程成绩 */
float total; /* 总分 */
struct student *next;
};
以下的数组或变量均为局部类型的(可放在main函数中加以定义):
sno数组存储学生学号,可事先加入初始数据若干条:
char sno[Mmax][11]={2011023001,2011023002,2011023003,2011023004};
name数组存储学生姓名,可事先加入初始数据若干条; namesearch数组用于存储要查找的学生姓名:
char name[Mmax][20]={Zhang,Li,Cheng,Wang}, namesearch[20];
score数组存储学生成绩;假设至多有M名学生,N门课程,可事先加入初始数据若干条; avecourse数组存储每门课程的平均分,实际计算时可事先初始化:
float score[Mmax][Nmax]={ {73.5,85,67}, {83,91.5,87},{65, 82, 78},{71,83,80.5}};
float avecourse[Nmax]={0};
tscore数组存储每位学生成绩的总分:
float tscore[Mmax]={0};
index数组为排名索引(约定为降序),存储每位学生总成绩在tscore 数组中的名次(即index[0]存放了总分第一的学生在tscore数组中的下标, inde
您可能关注的文档
最近下载
- 一二三级配电箱原理图施工临电平面图.pdf
- 2025年中国机器人传感器行业发展监测及发展趋势预测报告.docx
- 2025年江西工业工程职业技术学院单招职业倾向性测试题库及参考答案.docx VIP
- 虫害管理培训材料.ppt
- 门窗安装安全技术交底.docx VIP
- 2023年凹版油墨的现状与发展趋势.pptx
- 专题五 模型或原型的制作 考向二 木工工艺 学案(含解析)2025届高中通用技术.DOCX VIP
- 中国药物性肝损伤诊治指南(2023年版)解读.pptx
- 《“双减”背景下家校协同培养学生动机的研究》课题研究方案.doc
- 安徽《既有多层住宅加装电梯技术标准》DB34T4249-2022.pdf
文档评论(0)