


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学生成绩管理系统课程设计报告目录一、系统软件环境(3)二、课程设计题目(3)三、课程设计的基本要求(3)四、数据结构设计描述(4)五、各变量的定义和作用(4)六、系统各函数的功能、相互调用关系 (4)七、N-S流程图(5)八、课程设计过程中遇到的问题及解决过程 (6)(6)九、心得与体会十、附页源程序清单(6)卜一、参考文献(6)附录学生成绩管理系统课程设计一系统软件环境:本程序主要运行在:Visual C+ 6.0Turbo C/C+ 3.0 Turbo C 2.0二课程设计题目:(一)用梯形法求定积分(数值求解算法)2用梯形法编程求函数 f(x)=x 2+2x+1的定积分f(x)dX勺值。
2、提示:把积分区间a, b等分为n等分(a,b,n的值由程序输入。 形,积分面积就近似为这些小梯形面积之和。(二)综合训练学生成绩管理程序说明:有 N个学生,每个学生的数据包含学号(不重复)、姓名、成绩,试设计一学生成绩管理系统,使之能提供以下功能:(1)主菜单学生成绩管理系统1、成绩录入2、成绩查询3、成绩统计4、 退出),可得到若干个小梯三门课的成绩及平均(2)各菜单项功能 成绩录入:输入学生的学号、姓名及三门课的成绩; 成绩查询: 按学号查询学生记录。 绩统计: 计算学生的平均分; OK 根据学生的平均分高低,对学生的数据进行排序后输出; OK 退出系统:退出整个系统(即主菜单) 。三课程
3、设计的基本要求 设计步骤的规范不但可以培养学生科学的工作方法和作风,而且还能有效地减少错误, 提高工作效率。因此必须严格执行良好的实验步骤规范(包括上级操作规范) 。本课程设计 的基本步骤与要求是:1、问题分析及解决方案框架确定 充分地分析和理解问题本身,弄清要求做什么。 在确定解决方案框架过程中,考虑怎样使程序结构清晰、合理、简单和易于调试,并确 定每个函数的简单功能,以及函数之间的调用关系。2、详细设计和编码 确定算法的主要流程,再此基础上进行代码设计( Coding ),每个明确的功能模块程序 一般不超过 60 行,否则要进一步划分。3、上机前编写程序与检查 上机前程序检查可有效提高调试
4、效率,减少上机调试程序时的无谓错误。 程序检查主要有两种途径: 用一组测试数据手工执行程序; 通过阅读或给别人讲解自己 的程序而深入全面地理解程序逻辑。把程序中的明显错误事先排除。4、上机调试程序5、完成课程设计报告四数据结构设计描述主函数I菜单函数I I 1 I退出系统inpun函数 胎lect函数stati血他函数五各变量的定义和作用int num;/*char n ame;/*int score;/*定义学号,变量为整型*/ 定义姓名,变量为字符型 */ 定义课程的成绩,变量为整型*/float average; /*定义平均分,变量为浮点型 */六系统各函数的功能、相互调用关系1 函数
5、实现功能说明:(1) 、menu函数是定义一个菜单函数,其功能在于输出菜单界面供使用者选择。(2) 、in put 函数是定义用于输入学生信息。(3) 、select 函数是定义义用于查询学生信息。包括学号、姓名及各科成绩。(4) 、statistics 函数计算学生的平均分。根据学生的平均分高低,对学生的数据进行排序后输出。2 相互调用关系:Main函数调用menu函数。Menu函数可以调用in put函数、select函数和statistics 函数七.N-S流程图(一)、用梯形法求定积分流程图:输入 a,b,n ; h=(b-a)/ nf0 =a*a+2.0 * a+1.0for i =
6、0 to na=a+hf1 =a*a+2.0 *a+1.0s=(fO +f1) *h/2.0+sf0 =f1输出s(二)、学生成绩管理系统的 NS流程图:1、输入函数:for i=0 to N输入学号、姓名for j=0 to M输入3门成绩分数输入完毕!按任意键返回主菜单例如输入:1 王 90 80 75;2 李 80 85 60;3 赵 65 75 902、查询函数:输入要查询学生号码输出学生学号输出学生姓名for i=0 to M_ 显示该学生的3门课程成绩按任意键返回主菜单3、统计函数:For j=0 to NFor i=0 to Mtemp=temp+stuj.scoreistuj.
7、average=temp/N求平均成绩并输出排序(冒泡法)输出学生平均成绩前三名按任意键返回主菜单5、主函数:4、菜单函数:输出“学生成绩管理系统”及功能菜单清屏并调用 “输入函数”清屏并调用 “查询函数”清屏并调用 “统计函数”退出系统清屏并调用“菜单函数”八课程设计过程中遇到的问题及解决过程1、 For(i=0;i>n;i+)经常写成 For(i=0,i>n,i+),导致运行错误。解决方法:编程时候需要仔细和耐心。2、对菜单切换的方法不了解,编写的程序运行时候是一竖行向下排列,很影响使用者 的视觉范围,通过搜索一些相关资料得知 system("cls") 的
8、作用。3、对一些知识的不熟悉,导致刚开始编程的时候很难下手。解决方法:重新掌握不熟悉的知识并收集相关资料。九心得与体会:一周的课程设计很快结束了,一开始拿起题目时什么都不懂,真不知道从何下手到后来 觉得它很有趣, 很想去做并希望能把它做得更好。 刚开始错误实在太多, 改错误真的很头疼, 不过当经过一次又一次的调试后, 终于弄好了, 那时却是特别的高兴。 总的来说就是这次的 课程让我学了不少东西,也让我对编程更有兴趣,虽然学的不是很好,不过以后会努力的。十源程序(请见附录)附录 1:用梯形法求定积分(数值求解算法)附录 2:学生成绩管理系统十一 . 参考文献C 程序设计(第三版)附录 1:用梯形
9、法求定积分(数值求解算法)#include <stdio . h>main()int i;float s =0,h,f0,f1,a,b,n;printf("Plreas Enter a,b,n:");scanf("%f,%f,%f" ,&a, &b, &n);h =(b-a)/ n;f0=a*a+2.0 * a+1.0;for (i =0;i <=n;i +) a =a+h;f1 =a*a+2.0 * a+1.0;f0printf( getch();=(f0 +f1) *h/2.0 +s;=f1;"%f
10、n" ,s);学生成绩管理系统. h>. h>h>/* 学生人数 */* 课程门数 */附录 2:#include <stdio #include <stdlib #include <conio . #define N 3 #define M 3 struct student int num;char name20; int score3; float average; stuN;/* 学号 */* 姓名 */* 三门课成绩 */* 学生数 */void input();void select();/* 查询 */void statistics()
11、;/* 统计 */void menu();void input()int i,j;printf( "tt 成绩录入 nn" );for (i =0;i <N;i +) printf(" 请输入学号: ");scanf( "%d", &stui. num);printf(" 请输入姓名: ");scanf( "%s", &stui. name);for (j =0;j <M;j +) printf("第4门成绩的分数为:”,j +1);scanf( "
12、;%d", &stui .scorej); printf("nn" );printf("nn" );printf( " 输入完毕!按任意键返回主菜单! "); getch();/*2. 查询 */void select( int no)int i;printf("学生 %(号: n" ,no);printf( "学号: %dn",stuno-1 . num); printf( "姓名: %sn",stuno-1 . name); for (i =0;i &l
13、t;M;i +)printf( "第%(门课程的成绩为: ",i +1); printf( "%(n" ,stuno-1 . scorei);printf( "n 按任意键返回主菜单! "); getch();/*3. 统计 */voi( statistics()float temp =0;int i =0;int j =0;/* 学生成绩平均分 */temp =0;printf("tt 成绩统计 nn" );printf("n 学生成绩平均分: ");for (j =0;j <N;j +
14、)for (i =0;i <M;i +) temp=temp+stuj . scorei;stuj . average =temp/ N;printf( "n学生s的成绩平均成绩为:”,stuj .name);printf( "%0.2f 分” ,stuj . average);temp=0;/* 排序(冒泡法 )*/for (j =0;j <N;j +)for (i =0;i <N-j -1;i +)if (stui . average <stui+1. average)temp=stui .average;stui .average =stui
15、+1. average;stui +1 .average =temp;printf( "nn 学生平均成绩前三名 :" );for (i =0;i <3;i +)printf( "n 第%(名: %0.2f分”,i +1,stui. average);printf( "nn 按任意键返回主菜单! ");getch();voi( menu()int num=0;int n =0;printf( "nttt 学生成绩管理系统 nn" );退出系统printf("ttt 成绩录入 nttt 成绩查询 nttt 成绩统计 ntttn" );printf("tttchoose:" );scanf( "%(", &num);switch (num);(13) :"); case 1: system( "cls" ); input(); break ; case 2: system( "cls" ); printf( "tt 成绩查询 nn" p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江油离婚协议书
- 工程转包委托协议书
- 汉富控股协议书
- 实践团队任务协议书
- 小区仓储出售协议书
- 神明合同协议书
- 就业劳务基地协议书
- 泰国基金协议书
- 离婚流程协议书
- 照明合同协议书
- 教师职业道德与专业发展智慧树知到课后章节答案2023年下山东师范大学
- 点穴保健DIY智慧树知到课后章节答案2023年下江西中医药大学
- 企业安全生产风险辨识评估管控指导手册-危险货物储罐仓储
- 大病历体格检查-系统回顾(精简版)
- 济南出入境检验检疫局国际旅行卫生保健中心
- 黑土地知识科学普及-黑土地保护法宣贯课件
- 毛尖茶叶批生产记录汇总
- 维修电工求职简历
- 苏教版小学数学二年级下册课件:数据的收集和整理
- PCBA工艺介绍完整版-课件
- 卫生管理初中级职称大纲
评论
0/150
提交评论