分数统计软件设计报告.doc
《分数统计软件设计报告.doc》由会员分享,可在线阅读,更多相关《分数统计软件设计报告.doc(51页珍藏版)》请在沃文网上搜索。
1、目 录第一章 软件设计介绍1第二章 软件开发平台简介2第三章软件设计的内容33.1分数统计软件(A1)33.1.1设计题目及要求33.1.2设计思想及程序流程框图33.1.3逻辑功能程序43.1.4结果及完善方向73.2打字软件(A2)93.2.1设计题目及要求93.2.2设计思想及程序流程框图93.3.3逻辑功能程序93.2.4结果及完善方向123.3文本编辑器(A3)133.3.1设计题目及要求133.3.2设计思想及程序流程框图133.3.3逻辑功能程序133.3.4结果及完善方向163.4加密软件(A4)173.4.1设计题目及要求173.4.2设计思想及程序流程框图183.4.3逻辑
2、功能程序183.4.4结果及完善方向213.5进制转换器(A5)233.5.1设计题目及要求233.5.2设计思想及程序流程框图233.5.3逻辑功能程序243.5.4结果及完善方向273.6学生成绩核算系统的设计与实现(B1)293.6.1设计题目及要求293.6.2设计思想及程序流程框图293.6.3逻辑功能程序303.6.4结果及完善方向363.7模拟电信计费系统的设计与实现(B2)393.7.1设计题目及要求393.7.2设计思想及程序流程框图393.7.3逻辑功能程序403.7.4结果及完善方向47第四章 心得体会50第一章 软件设计介绍一、软件设计的性质、目的本课程是一门技能训练课
3、,为在校学生的必修课程。通过设计培养学生良好的编程习惯,使学生掌握编程的基本步骤,规范学生的编写程序的格式,锻炼学生编写程序的能力,为将来编写较大程序的打好基础。二、软件设计的任务通过集中时间上机实验,使学生充分发挥已有的编程能力,熟悉编译环境,选择若干课题,进行审题、分析、设计和调试,并根据要求写出实验报告。三、实验内容软件设计课题共分A 、B两档。A档共5题,第一周完成;B档共2题,第二周完成。四、考核办法考核采取程序验收和面试的方法进行。其中,程序验收及面试占50%,实验报告占50%。在考核过程中,若发现抄袭程序者,所抄袭的程序按零分记。注:如有以下情况,视为抄袭:1、 与已验收的程序明
4、显雷同;2、 面试时不能解释程序中的某些基本功能,或对所写程序一无所知。第二章 软件开发平台简介 Microsoft Visual C+是Microsoft公司推出的开发Win32环境程序,面向对象的可视化集成编程系统。它不但具有程序框架自动生成、灵活方便的类管理、代码编写 和界面设计集成交互操作、可开发多种程序等优点,而且通过简单的设置就可使其生成的程序框架支持数据库接口、OLE2,WinSock网络、3D控制界 面。 它以拥有“语法高亮”,IntelliSense(自 动编译功能)以及高级除错功能而著称。比如,它允许用户进行远程调试,单步执行等。还有允许用户在调试期间重新编译被修改的代码,
5、而不必重新启动正在调试 的程序。其编译及建置系统以预编译头文件、最小重建功能及累加连结著称。这些特征明显缩短程式编辑、编译及连结的时间花费,在大型软件计划上尤其显著。第三章 软件设计的内容3.1 分数统计软件(A1)3.1.1设计题目及要求 题目:分数统计 要求:(1)输入某班级学生的姓名、分数; (2)对(1)的分数进行降幂排列并输出; (3)具有输入输出界面。3.1.2设计思想及程序流程框图 设计思想:先输出程序菜单,然后按照菜单选项进行操作,选择选项一:即先输入要排序的学生人数,然后利用循环语句按次输入学生姓名和成绩,直至将学生姓名和分数全输入,输入完后按enter后,在程序界面上显示刚
6、才输入的内容。选择选项二:则运行程序中的按照成绩的降序功能输出排序后的学生学号、学生姓名和学生成绩。选择选项三:则程序正常退出。 程序流程框图:开 始 输出菜单选项输入选项 n输入学生姓名name和分数score用程序将学生分数排序输出排序后的学生数据 结 束输入学生人数n3.1.3逻辑功能程序/*-要求:(1)输入某班级学生的姓名、分数;(2)对(1)的分数进行降幂排列并输出;(3)具有输入输出界面。-*/#include#include#include#includestruct student int ID; char name10; /学生姓名 float score; /学生成绩st
7、u100;int num;void dis_menu(); /菜单显示函数void set_menu(); /菜单设置程序void set_inf(); /学生信息输入函数void dis_inf(); /学生信息显示函数void dec_sort(); /学生成绩降序排列void XD_transfer();int main()while(1)dis_menu();set_menu();return 0;void dis_menu()printf(t*n);printf(t*分数统计程序*n);printf(t*n);printf(t* 1、输入学生数据 *n); printf(t* 2、成
8、绩降序排列 *n);printf(t* 3、退出程序 *n); printf(t*n);printf(t请选择你要进行的操作:);void set_menu()char n100;scanf(%s,n);if(strlen(n)1)printf(t输入错误!请重新输入:); set_menu(); elseswitch(*n) case 1: XD_transfer(); set_inf(); dis_inf(); break; case 2: dec_sort(); dis_inf(); break; case 3: printf(t); exit(1); break; default: p
9、rintf(t输入错误!请重新输入:); set_menu(); break; void set_inf()int i;for(i=0;inum;i+)stui.ID=i+1;printf(t学号:%dn,stui.ID);printf(t姓名:); scanf(%s,stui.name);printf(t成绩:);scanf(%f,&stui.score); printf(n);void dis_inf() int i; printf(t学生成绩统计如下:n); printf(t%-st%-10st%-8stn,学号,姓名,成绩); for(i=0;inum;i+) printf(t%-dt
10、%-10st%-8gtn,stui.ID,stui.name,stui.score); printf(n);void dec_sort()int i,j,max_index,n=num; struct student stu_temp; for(i=0;in-1;i+)max_index=i;for(j=i+1;jstumax_index.score)max_index=j;if(max_index!=i)stu_temp=stui;stui=stumax_index;stumax_index=stu_temp;void XD_transfer()char temp100,ch;int i=0
11、,flag=1,count=0;while(flag)i=0;flag=0;count=0;fflush(stdin); /清空输入缓冲区,确保读入无错printf(t请输入学生人数:);while(ch=getchar()!=n)if(ch9)printf(t输入数字有误!n);flag=1;break;tempi=ch;count+;i+;tempi=0;/ 输入正确八进制结束for(i=0;icount;i+)num=num+(tempi-0)*(int)pow(10,(count-i-1);/计算值printf(n);3.1.4结果及完善方向运行结果:输入学生成绩窗口学生成绩降序排列窗
12、口程序特点及完善方向:本程序界面美观,通过程序优化,在输入菜单选择项时即使输入的是很长的混乱字符,程序也会提示你输入错误,不会发生程序崩溃的现象。同理,输入学生人数也一样,保证了程序的稳定可靠。如果程序可以中途停止,并自动保存刚输入的数据,待下次运行时正常调出,则程序将更加完整,更具有实用性。3.2 打字软件(A2)3.2.1设计题目及要求 题目:打字程序 要求:(1)随即产生一字符串,每次产生的字符串内容、长度都不同; (2)根据(1)的结果,输入字符串,判断输入是否正确,输出正确率; (3)具有输入输出界面。3.2.2设计思想及程序流程框图设计思想:先设计一个欢迎进入打字程序的菜单,然后就
13、由程序随机产生一个任意长度的字符串(大小写的英文字母),然后由用户输入字符串里显示的字母,输入完后按enter结束输入,最后程序输出用户打字的正确率。接着一个选项,询问用户是否继续进行打字练习。选择是则打字练习继续上述的操作;选择退出程序则退出程序。程序流程框图: 开 始输出欢迎菜单输出随机产生的字符串输入字符串输出打字正确率输入选项输出yes or no1 ch 结 束yesno3.3.3逻辑功能程序/*-程序名称:打字程序要求:(1)随机产生一字符串,每次产生的字符串内容、长度都不同;(2)根据(1)的结果,输入字符串,判断输入是否正确,输出正确率;(3)具有输入输出界面。-*/#incl
14、ude#include#include#include#define max_len 40 /定义产生的字符串最长为40个字符void rand_str(char *p,int length);double compare(char *p,char *s,int length);void display(); int main()char ch20;int length;double flag;srand(time(NULL);char p80=;char s80=; display();dochar p80=; char s80=; printf(nt-n);length=1+rand()%
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分数 统计 软件设计 报告
