《第11章 C语言程序综合实训.ppt》由会员分享,可在线阅读,更多相关《第11章 C语言程序综合实训.ppt(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第1111章章 C C语言程序综合实训语言程序综合实训第第11章章 C语言程序综合实训语言程序综合实训学习目标学习目标通过综合实践性训练,掌握一般应用程序的设计方法。通过综合实践性训练,掌握一般应用程序的设计方法。学习内容学习内容应用程序设计的一般步骤,应用程序设计实例。应用程序设计的一般步骤,应用程序设计实例。下一页下一页返返 回回第第11章章 C语言程序综合实训语言程序综合实训11.1 应用程序设计方法应用程序设计方法11.2 应用程序设计实例应用程序设计实例11.3 C语言课程实训语言课程实训上一页上一页返返 回回11.1 应用程序设计方法应用程序设计方法程序设计就是针对给定问题进行设
2、计、编写和调试计算机程序的过程。程序设计就是针对给定问题进行设计、编写和调试计算机程序的过程。作为一名程序设计者,要想设计好一个程序,除了掌握程序设计语言作为一名程序设计者,要想设计好一个程序,除了掌握程序设计语言本身的语法规则外,还要学习程序设计的方法和技巧,并通过不断的本身的语法规则外,还要学习程序设计的方法和技巧,并通过不断的实践来提高自己的程序设计能力。实践来提高自己的程序设计能力。进行应用程序设计时一般遵循以下步骤:进行应用程序设计时一般遵循以下步骤:1.需求分析需求分析在这个环节,根据用户的具体要求进行以下工作:在这个环节,根据用户的具体要求进行以下工作:(1)用户需求分析。务必详
3、细、具体地理解用户要解决的问题,明)用户需求分析。务必详细、具体地理解用户要解决的问题,明确为了达到用户要求和系统的需求,系统必须做什么,系统必须具备确为了达到用户要求和系统的需求,系统必须做什么,系统必须具备哪些功能。哪些功能。(2)数据及处理分析。通过分析实际问题,了解已知或需要的输入)数据及处理分析。通过分析实际问题,了解已知或需要的输入数据、输出数据,需要进行的处理。数据、输出数据,需要进行的处理。返返 回回下一页下一页上一页上一页11.1 应用程序设计方法应用程序设计方法(3)可行性分析。用户提出的问题是否值得去解,是否有可行的解)可行性分析。用户提出的问题是否值得去解,是否有可行的
4、解决办法。决办法。(4)运行环境分析。即硬件环境和软件环境分析。)运行环境分析。即硬件环境和软件环境分析。对初学者而言,关键处理好需求分析和数据及处理分析这两方面的工对初学者而言,关键处理好需求分析和数据及处理分析这两方面的工作。作。2.系统设计系统设计系统设计可分为总体设计和详细设计。总体设计通常用结构图描绘程系统设计可分为总体设计和详细设计。总体设计通常用结构图描绘程序的结构,以确定程序由哪些模块组成以及模块间的关系。序的结构,以确定程序由哪些模块组成以及模块间的关系。详细设计就是给出问题求解的具体步骤,给出怎样具体地实现各功详细设计就是给出问题求解的具体步骤,给出怎样具体地实现各功能模块
5、的描述。能模块的描述。返返 回回下一页下一页上一页上一页11.1 应用程序设计方法应用程序设计方法3.系统实现系统实现选择适当的程序设计语言,把详细设计的结果描述出来,即形成源程选择适当的程序设计语言,把详细设计的结果描述出来,即形成源程序,并上机运行调试源程序,修改发现的错误,直到得出正确的结果。序,并上机运行调试源程序,修改发现的错误,直到得出正确的结果。在调试过程中应该精心选择典型数据进行测试,避免因测试数据不妥在调试过程中应该精心选择典型数据进行测试,避免因测试数据不妥而引起的计算偏差和运行错误。而引起的计算偏差和运行错误。4.建立文档资料建立文档资料整理分析程序结果,建立相应的文档资
6、料,以便日后对程序进行维护整理分析程序结果,建立相应的文档资料,以便日后对程序进行维护或修改。或修改。返返 回回11.2 应用程序设计实例应用程序设计实例开发一个学生成绩管理系统,用于对班级的学生成绩进行处理。班级开发一个学生成绩管理系统,用于对班级的学生成绩进行处理。班级有有N个学生,每个学生的信息包括学号、姓名和个学生,每个学生的信息包括学号、姓名和3门课成绩。门课成绩。本系统实现的功能要求:本系统实现的功能要求:(1)录入学生数据。)录入学生数据。(2)显示学生数据。)显示学生数据。(3)计算每个学生平均成绩。)计算每个学生平均成绩。(4)计算各科平均成绩。)计算各科平均成绩。(5)按照
7、学生平均成绩排序。)按照学生平均成绩排序。返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例1.系统分析与设计系统分析与设计通过分析以上功能描述,可以确定本系统的数据结构和主要功能模块。通过分析以上功能描述,可以确定本系统的数据结构和主要功能模块。(1)定义数据结构)定义数据结构由于学生的数据包括学号、姓名和由于学生的数据包括学号、姓名和3门课成绩,所以决定采用结构体门课成绩,所以决定采用结构体类型来描述,具体定义如下:类型来描述,具体定义如下:struct student char num6;char name8;int score3;float avr;返返 回回
8、下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例(2)程序功能模块)程序功能模块根据系统功能要求,确定出根据系统功能要求,确定出6个功能模块,如个功能模块,如图图11-1所示,包括录入模所示,包括录入模块,显示模块,求每个学生平均成绩,求各科平均成绩,排序模块及块,显示模块,求每个学生平均成绩,求各科平均成绩,排序模块及显示菜单模块,每个模块对应一个函数,分别命名为显示菜单模块,每个模块对应一个函数,分别命名为creat、show、average、allaverage、sort、showmenu。2.各个模块设计各个模块设计(1)主界面设计。为了程序界面清晰,主界面采用菜单设
9、计,便于)主界面设计。为了程序界面清晰,主界面采用菜单设计,便于用户选择执行,如用户选择执行,如图图11-2所示。所示。(2)数据录入模块。本模块功能是从键盘输入)数据录入模块。本模块功能是从键盘输入N个学生数据个学生数据(包括学包括学号、姓名、号、姓名、3门课成绩门课成绩)并存放到磁盘文件并存放到磁盘文件“stud”中,中,“stud”为二进制为二进制数据文件,用函数数据文件,用函数fread()和和fwrite()完成读写操作。数据录入过程如完成读写操作。数据录入过程如图图11-3所示。所示。返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例显示学生数据模块。从磁
10、盘文件中读取学生数据,以表格形式显示到显示学生数据模块。从磁盘文件中读取学生数据,以表格形式显示到屏幕上。显示格式如屏幕上。显示格式如图图11-4所示。执行此模块时,还没有计算平均成所示。执行此模块时,还没有计算平均成绩,因此信息表中的平均成绩均为绩,因此信息表中的平均成绩均为0。(3)计算每个学生平均成绩。从磁盘文件读取学生数据,计算每个)计算每个学生平均成绩。从磁盘文件读取学生数据,计算每个人的平均成绩后输出,如人的平均成绩后输出,如图图11-5所示。所示。(4)计算各科平均成绩模块。从磁盘文件读取学生数据,计算各科)计算各科平均成绩模块。从磁盘文件读取学生数据,计算各科平均成绩后直接输出
11、,如平均成绩后直接输出,如图图11-6所示。所示。(5)按照学生平均成绩排序。从磁盘文件读取学生数据,按照平均)按照学生平均成绩排序。从磁盘文件读取学生数据,按照平均成绩从高到低排序后输出结果,如成绩从高到低排序后输出结果,如图图11-7所示。所示。返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例3.源程序清单源程序清单#include stdio.h#include string.h#define N 3 /*以以3个学生为例个学生为例*/struct student char num6;char name8;int score3;double av;stuN,s
12、N;void creat()/*录入学生原始数据并写入磁盘文件录入学生原始数据并写入磁盘文件*/返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例int i,j,sum;FILE *fp;for(i=0;iN;i+)printf(n请输入第请输入第%d个学生数据个学生数据:n,i+1);printf(学号学号:);scanf(%s,stui.num);printf(姓名姓名:);scanf(%s,stui.name);sum=0;for(j=0;j3;j+)返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例 printf(成绩成绩%d:,j+
13、1);scanf(%d,&stui.scorej);fp=fopen(stud,wb);/*文件写操作文件写操作*/for(i=0;iN;i+)fwrite(&stui,sizeof(struct student),1,fp);fclose(fp);void show()/*从磁盘文件读取学生数据并显示从磁盘文件读取学生数据并显示*/返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例int i,j;FILE *fp;fp=fopen(stud,rb);for(i=0;iN;i+)fread(&si,sizeof(struct student),1,fp);/*读磁盘文
14、件读磁盘文件*/printf(nn-学生信息表学生信息表1-nn);printf(学号学号t姓名姓名t成绩成绩1t成绩成绩2t成绩成绩3t平均成绩平均成绩n);for(i=0;iN;i+)printf(%st%st,si.num,si.name);返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例 for(j=0;j3;j+)printf(%dt,si.scorej);printf(%.2lfn,stui.av);printf(n);fclose(fp);void average()/*计算每个学生的平均成绩并输出计算每个学生的平均成绩并输出*/int i,j,sum
15、;FILE *fp;fp=fopen(stud,rb);返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例for(i=0;iN;i+)fread(&stui,sizeof(struct student),1,fp);for(i=0;iN;i+)sum=0;for(j=0;j3;j+)sum+=stui.scorej;stui.av=sum/3.0;printf(-学生信息表学生信息表2-n);printf(学号学号t姓名姓名t成绩成绩1t成绩成绩2t成绩成绩3t平均成绩平均成绩n);for(i=0;iN;i+)返返 回回下一页下一页上一页上一页11.2 应用程序设计实
16、例应用程序设计实例printf(%st%st,stui.num,stui.name);for(j=0;j3;j+)printf(%dt,stui.scorej);printf(%.2lfn,stui.av);for(i=0;iN;i+)fwrite(&stui,sizeof(struct student),1,fp);printf(nn);fclose(fp);void allaverage()/*计算各科平均成绩并输出计算各科平均成绩并输出*/int i,j,sum;返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例double all3;FILE *fp;fp=f
17、open(stud,rb);for(i=0;iN;i+)fread(&stui,sizeof(struct student),1,fp);for(i=0;i3;i+)sum=0;for(j=0;jN;j+)sum+=stuj.scorei;alli=(double)sum/N;printf(-学生信息表学生信息表-n);返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例 printf(学号学号t姓名姓名t成绩成绩1t成绩成绩2t成绩成绩3t平均成绩平均成绩n);for(i=0;iN;i+)printf(%st%st,stui.num,stui.name);for(j=
18、0;j3;j+)printf(%dt,stui.scorej);printf(%.2lfnn,stui.av);printf(t t);/*输出各科平均成绩输出各科平均成绩*/for(i=0;i3;i+)printf(%.2lft,alli);printf(nn);fclose(fp);返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例void sort()/*按个人平均成绩高低排序按个人平均成绩高低排序*/int i,j,k,t=0;double temp=0;char str10=;for(i=0;iN-1;i+)/*排序排序*/for(j=i+1;jN;j+)i
19、f(si.avsj.av)temp=si.av;si.av=sj.av;sj.av=temp;strcpy(str,si.num);strcpy(si.num,sj.num);返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例strcpy(sj.num,str);strcpy(str,si.name);strcpy(si.name,sj.name);strcpy(sj.name,str);for(k=0;k3;k+)t=si.scorek;si.scorek=sj.scorek;sj.scorek=t;printf(-学生信息表学生信息表-n);返返 回回下一页下一页
20、上一页上一页11.2 应用程序设计实例应用程序设计实例 printf(学号学号t姓名姓名t成绩成绩1t成绩成绩2t成绩成绩3t平均成绩平均成绩n);for(i=0;iN;i+)printf(%st%st,si.num,si.name);for(j=0;j3;j+)printf(%dt,si.scorej);printf(%.2lfn,si.av);printf(nn);void showmenu()/*显示菜单显示菜单*/printf(n 学生成绩管理系统学生成绩管理系统 n);返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例printf(n=n);printf(1
21、.录入学生数据录入学生数据 n);printf(2.显示学生数据显示学生数据 n);printf(3.计算学生平均成绩计算学生平均成绩 n);printf(4.计算各科平均成绩计算各科平均成绩 n);printf(5.排名排名 n);printf(0.退出系统退出系统 n);printf(=n);printf(n请输入您的选择:请输入您的选择:);main()/*主控程序主控程序*/返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例int choice;showmenu();scanf(%d,&choice);while(choice!=0)/*选择选择0退出退出*/
22、switch(choice)case 1:creat();break;case 2:show();break;case 3:average();break;case 4:allaverage();break;返返 回回下一页下一页上一页上一页11.2 应用程序设计实例应用程序设计实例case 5:sort();break;showmenu();scanf(%d,&choice);程序说明:程序说明:本学生管理系统是一个示例性质的管理信息系统,其功能简单,实现本学生管理系统是一个示例性质的管理信息系统,其功能简单,实现的技术也有欠缺。不过本例旨在抛砖引玉,相信各位读者经过不断的的技术也有欠缺。不
23、过本例旨在抛砖引玉,相信各位读者经过不断的学习,能开发出完善的应用程序。学习,能开发出完善的应用程序。返返 回回11.3 C语言课程实训语言课程实训1.实训目的实训目的课程实训针对本课程所学知识进行综合性的实践训练。通过编制课程实训针对本课程所学知识进行综合性的实践训练。通过编制C语语言程序,熟练掌握言程序,熟练掌握C语言程序设计的方法,理解语言程序设计的方法,理解C语言的语法规则、语言的语法规则、编程思想,掌握程序的运行、调试方法,培养学生利用分析问题,解编程思想,掌握程序的运行、调试方法,培养学生利用分析问题,解决问题的能力。决问题的能力。2.课程实训应达到的能力要求课程实训应达到的能力要
24、求(1)语法规则应用能力。)语法规则应用能力。(2)算法设计能力。)算法设计能力。(3)程序代码编写能力。)程序代码编写能力。(4)程序运行、调试的能力。)程序运行、调试的能力。(5)文档编写能力。)文档编写能力。3.实训时间实训时间实训时间一周,计实训时间一周,计30学时,要求一人一机。学时,要求一人一机。返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训4.实训内容实训内容课程实训主要从以下方面对学生进行训练:课程实训主要从以下方面对学生进行训练:(1)顺序结构,选择结构,循环结构。)顺序结构,选择结构,循环结构。(2)模块化程序设计。)模块化程序设计。(3)数组的应用
25、。)数组的应用。(4)指针的使用。)指针的使用。(5)结构体的应用。)结构体的应用。(6)文件的应用。)文件的应用。实训题目分为单项训练和综合训练。综合训练题目为每人必做项目,实训题目分为单项训练和综合训练。综合训练题目为每人必做项目,单项训练题目针对每个学生的学习情况专门设计,这样安排的目的是单项训练题目针对每个学生的学习情况专门设计,这样安排的目的是为了发挥每个学生的能动性。为了发挥每个学生的能动性。返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训5考核标准考核标准要求每个学生独立完成单项训练和综合训练题目,编写的程序代码能要求每个学生独立完成单项训练和综合训练题目,
26、编写的程序代码能够正常运行并上传到指定的够正常运行并上传到指定的ftp。成绩按下面几个方面评定:。成绩按下面几个方面评定:(1)程序是否能正常运行;)程序是否能正常运行;(2)程序能否完成题目所提出的功能要求;)程序能否完成题目所提出的功能要求;(3)人机界面是否友好;)人机界面是否友好;(4)是否在规定时间内独立完成。)是否在规定时间内独立完成。(5)实训报告是否内容准确,格式规范。)实训报告是否内容准确,格式规范。6.课程实训报告要求课程实训报告要求(1)采用提供的统一封面。)采用提供的统一封面。(2)正文内容包括:设计题目,算法描述,程序代码(主要代码要)正文内容包括:设计题目,算法描述
27、,程序代码(主要代码要加注释),运行记录。加注释),运行记录。(3)实训总结。)实训总结。(4)打印设计报告。)打印设计报告。返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训7.实训参考题目实训参考题目综合训练综合训练学生电话簿链表管理程序。程序功能要求:学生电话簿链表管理程序。程序功能要求:(1)电话簿数据包括姓名和电话号码两项。)电话簿数据包括姓名和电话号码两项。(2)完成电话薄文件的建立,输出,查询,删除和插入)完成电话薄文件的建立,输出,查询,删除和插入5个功能。个功能。(3)设计程序功能菜单。)设计程序功能菜单。(4)采用模块化程序设计,程序包含)采用模块化程序
28、设计,程序包含1个主模块、个主模块、5个子模块。个子模块。(5)注意人机界面的友好设计。)注意人机界面的友好设计。返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训单项训练单项训练1.编写一个课表查询菜单程序,由键盘输入数字编写一个课表查询菜单程序,由键盘输入数字15中任意值时,在中任意值时,在屏幕显示出相应的星期一到星期五的课表,输入屏幕显示出相应的星期一到星期五的课表,输入0时退出菜单程序,时退出菜单程序,输入输入05外的数时要重新输入,菜单格式要求:外的数时要重新输入,菜单格式要求:课表查询菜单课表查询菜单0.退退 出出1.星期一星期一2.星期二星期二3.星期三星期三
29、4.星期四星期四5.星期五星期五返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训请选择(请选择(05):):1 星期一:(星期一:(1-2)英语)英语、(、(3-4)数学、()数学、(5-6)电路)电路请选择(请选择(05):):2 请选择(请选择(05):):0 谢谢查询,再见!谢谢查询,再见!2.算术测试程序:该程序用来测试小学生的加减运算能力。运行界面算术测试程序:该程序用来测试小学生的加减运算能力。运行界面如下:如下:请输入试题数量:请输入试题数量:322-77=-55 正确!正确!85+21=106正确!正确!返返 回回下一页下一页上一页上一页11.3 C语言课
30、程实训语言课程实训86-24=60错误!答案为:错误!答案为:62总共总共3道题,做对道题,做对2题,正确率为题,正确率为67%3.用户登录程序。提示用户输入用户名和密码,判断是否合法用户用户登录程序。提示用户输入用户名和密码,判断是否合法用户(假设合法的用户名是(假设合法的用户名是“abc”、密码是、密码是123456),如果合法,显示),如果合法,显示“welcome to use the software”,否则要求重新输入,允许输入否则要求重新输入,允许输入3次,若次,若3次都错,显示次都错,显示”password error!you can not use software“。4.有
31、如下有如下12个国家在我国进行某项体育比赛,依规定入场式时除东道个国家在我国进行某项体育比赛,依规定入场式时除东道主走在最后外,其它国家依国名的英语字母顺序排列,请编写程序完主走在最后外,其它国家依国名的英语字母顺序排列,请编写程序完成:成:12个国家为:个国家为:Thailan、Singapore、Laos、Burma、China、India、Nepal、Japan、Korea、Mongolia、Egypt、Indonesia。返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训5.编写程序计算两个矩阵的和,各元素的值由随机函数产生。两个矩编写程序计算两个矩阵的和,各元素的
32、值由随机函数产生。两个矩阵相加是对应元素相加。要求使用函数完成。阵相加是对应元素相加。要求使用函数完成。6.评分统计程序。共有评分统计程序。共有8个评委打分,统计时去掉一个最高分和一个个评委打分,统计时去掉一个最高分和一个最低分,其余最低分,其余6个分数的平均分即是最后得分,得分精确到个分数的平均分即是最后得分,得分精确到1位整数、位整数、2位小数。位小数。7.某班有某班有40名学生,期终考名学生,期终考4门课程。求每个学生总成绩,并按总成门课程。求每个学生总成绩,并按总成绩高分到低分输出。每个学生情况包括学号、姓名、绩高分到低分输出。每个学生情况包括学号、姓名、4门课程成绩、门课程成绩、总成
33、绩、名次。输出格式为:总成绩、名次。输出格式为:软件软件3061班学生成绩一览表班学生成绩一览表=学号学号 姓名姓名 C语言语言 VB 数据库数据库 操作系统操作系统 总成绩总成绩 名次名次返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训8.编写程序,计算编写程序,计算1001000之间的特殊数。之间的特殊数。(1)素数素数 (2)回文数回文数 (3)完数完数 (4)水仙花数水仙花数 要求:(要求:(1)采用模块化程序设计方法。)采用模块化程序设计方法。(2)菜单设计格式如:)菜单设计格式如:=菜菜 单单=1.素素 数数2.回回 文文 数数3.完完 数数4.水仙花数水仙花
34、数 0.退退 出出=返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训9.输入输入10本书的书名和单价,按照单价的升序进行排序后输出。本书的书名和单价,按照单价的升序进行排序后输出。输入格式:输入格式:please enter book name and price.book 1 :xx xxx 2 :xx xxx 10:xx xxx输出格式:输出格式:-BOOK LIST -10.现在有教师(姓名、单位、住址、职称)和学生(姓名、班级、现在有教师(姓名、单位、住址、职称)和学生(姓名、班级、住址、入学成绩)的信息。请输入住址、入学成绩)的信息。请输入10名教师和学生的原始
35、信息后,按名教师和学生的原始信息后,按姓名排序,然后按排序后的顺序输出两张信息表。注意输出表的格式。姓名排序,然后按排序后的顺序输出两张信息表。注意输出表的格式。返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训11.某个公司采用公用电话传递数据,总共某个公司采用公用电话传递数据,总共10个数据,每个数据是个个数据,每个数据是个四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上上5,然后用和除以,然后用和除以10的余数代替该数字,再将第一位和第四位交换,的余数代替该数字,再将第一位和第四位交换,第二位和
36、第三位交换。第二位和第三位交换。要求从键盘提供要求从键盘提供10个原始数据,输出加密后的数据。个原始数据,输出加密后的数据。12.设某一个班共有设某一个班共有40个学生,期末考试个学生,期末考试5门课程,编制程序评定学生门课程,编制程序评定学生的奖学金。要求输出一、二等奖学金学生的学号和各门课成绩。的奖学金。要求输出一、二等奖学金学生的学号和各门课成绩。奖学金评定标准是:总成绩超过全班总平成绩奖学金评定标准是:总成绩超过全班总平成绩20%发给一等奖学金,发给一等奖学金,超过全班总平成绩超过全班总平成绩10%发给二等奖学金。发给二等奖学金。13.设有设有50个学生档案(学号、姓名、年龄、个学生档
37、案(学号、姓名、年龄、5门课成绩)。编制程序,门课成绩)。编制程序,读取每个学生的档案数据,然后计算出每个学生的总成绩和平均成绩。读取每个学生的档案数据,然后计算出每个学生的总成绩和平均成绩。最后将所有平均成绩高于总平均成绩的学生档案输出。最后将所有平均成绩高于总平均成绩的学生档案输出。返返 回回下一页下一页上一页上一页11.3 C语言课程实训语言课程实训14.电话薄中每个人的数据由姓名和电话号码两项组成。设计一个结电话薄中每个人的数据由姓名和电话号码两项组成。设计一个结构体数组来表示电话薄,读取每个人的数据并按姓名排序,然后等待构体数组来表示电话薄,读取每个人的数据并按姓名排序,然后等待用户
38、输入一个电话号码,如果电话薄中有此号码,则输出相应的用户用户输入一个电话号码,如果电话薄中有此号码,则输出相应的用户信息,否则输出此号是空号的信息。信息,否则输出此号是空号的信息。15.同学录管理程序。要求可以实现录入,排序,查询及修改功能。同学录管理程序。要求可以实现录入,排序,查询及修改功能。同学录信息包括学号,姓名和联系电话。同学录信息包括学号,姓名和联系电话。返返 回回图图11-1 学生管理系统功能模块学生管理系统功能模块返返 回回图图11-2 主界面主界面返返 回回图图11-3 数据录入界面数据录入界面返返 回回图图11-4 显示原始数据显示原始数据返返 回回图图11-5 计算显示平均成绩计算显示平均成绩返返 回回图图11-6 计算并显示各科平均成绩计算并显示各科平均成绩返返 回回图图11-7 按平均成绩高低排序按平均成绩高低排序返返 回回