C语言程序设计报告-学生成绩记录簿.docxVIP

C语言程序设计报告-学生成绩记录簿.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
上海应用技术学院 课 程 设 计 2011 ~ 2012 学年第 2 学期 设计题目 成绩记录簿 院(系) 计算机科学与信息工程 专 业 网络工程 班 级 学号 15 学生姓名 xx 设计时间 指导教师 xxx 提交日期 目录 概述 题目 程序简述 程序性能 课题分析 程序系统的结构 结构流程图 功能 性能 输入输出项信息 功能模块说明流程逻辑 算法 程序测试,运行结果及说明 课程设计总结 附录(参考文献,原代码解析,限制条件,程序测试) 6.1 参考文献 6.2 原代码解析 限制条件 1.概述 题目 成绩记录簿 程序描述 本程序是非数值计算型算法设计, 我设计出了通讯录管理系统的基本功能, 并设计了简单的界面。 本程序主要考察对自定义函数的熟悉程度, 本程序主要使用的是链表的相关操作,包括结构体链表的创建、输入、输出、查找、删除等。我设 计的这个通讯录系统也初步实现了人员信息的显示、删除、查找、修改、添加等必要的功能。 1.建立一个主界面 2.用 switch 语句进行分类讨论 3.分别进入录入,查询,删除,求平均值等子函数。 4.将子函数与主函数相连即可。 程序性能 该程序可以建立学生的成绩记录。 可以方便老师和同学方便的查阅成 绩; 这个程序有录入和删除的功能; 还可以求出平均成绩,并排序 课题分析 程序系统的结构 主函数 添加成绩 求平均值 删除成绩 查询 按平均值排序 退出 程序流程图 课程编号 添加成绩 查询成绩 添 添 添 添 查 查 加 加 加 加 询 询 学 学 课 学 学 班 生 生 程 生 生 级 学 姓 编 成 成 成 号 名 号 绩 绩 绩 查询学生成绩 查询班级成绩 课 程 功能 学 姓 编 号 名 号 查 查 询 询 成绩记录簿中记录以下数据:学号、姓名、课程编号、课程名称、成绩、学分,所有成绩都 以百分制计分;输入信息时要检查数据项学号、课程编号、成绩、学分的合法性,学号: 8 位数字;课程编号: 5 位数字;成绩: 0 ~ 100 之间的整数,学分: 1~ 5 之间的实型数。 添加成绩: 需要输入学生的学号或姓名、 课程编号及成绩, 如已有该门课程成绩给出提示; 查询(班级或个人)成绩: 查询个人成绩: 以学号或姓名作为关键字, 可查询一个学生的所有成绩, 和已完成的总学 分。 查询班级成绩: 以课程编号为关键字, 成绩表后面要统计平均分、 及格率及全班同学不同 课程在不同分数段分布的人数及百分比。 拓展功能: 程序启动时先从文件读入数据,如果文件中没有数据则给出提示; 每次修改的数据写入文件 性能 方便 ,灵活,直观,易用 输入输出项信息 输入项: char name[10] 设置学生名称 long int id 定义学号为长整型 float avg 平均分为实数 输出项 int m1,m2,m3,score,xf; 定义整型 float avg; 以浮点型输出平均分 功能模块说明 流程逻辑 主程序提供一个界面,允许用户选择。使用 switch 语句,用时直接输入数字即可。 增加函数,功能是插入学生成绩。使用一个无穷循环,直到录入” n”时结束。删除函数,功能是删除,分为两步,先找后删。找,用 strcmp 函数 来做如果找到记录 i 值,反之记为 -1;删除可以从 i 项开始将数组的后一项赋值给前一项。前一项自动被删掉。这样完成删除。 查询函数与之类似,将删除改为输出即可; 求平均值函数与查询类似只是输出时只输出平均值而已。 按平均值排序只要加一个排序函数即可。 退出函数什么都不写,即可。 开始 输入口令 主菜单 选择的序号是否 符合需求 Yes 添 添 删 查 查 写 加 加 除 询 询 入 学 班 成 学 班 文 生 级 绩 生 级 件 成 成 成 成 绩 绩 绩 绩  No 读 退 取 出 文 系 件 统 3.2 算法 本程序参考了冒泡法 其代码结构为: For(i=0;ik;i++) { For(j=i;jk;j++) { If(ab) { } } } 其中也多次用到了循环和判断结构 运行结果及说明 1.开始时 2.添加 3.删除 4.查询学生成绩 ( 1)按名字查询 ( 2)按学号查询 4.查询班级成绩 5.写入文本文件 strcmp,解决了问题 6.读取文本文件 课程设计总结 短短的俩周已经过去了,在此我将交出我一周的成果,我真是百感交错原先写程序直接编,条理性太差。如果先做一个流程图就条理很多。学会了将文件存入和读取,并学会在文件中加入信息和删除信息。我在查找学生姓名时遇到困难,从课本上找到了一个函数 困难: 我在定义学生的学号时首先用整型 %d。发现输出与录入不同。改用长整型 %ld 仍然不行。但是字符型 %s却可以做到。 ! 事实上,与过去相比

您可能关注的文档

文档评论(0)

158****3214 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档