版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第18章汇总统计模块的开发本章目录18.1任务说明18.2任务分析18.3任务实施18.4知识点详解18.5项目完善18.1任务说明通过学生成绩管理系统,我们可以方便地
进行学生信息的录入、输出以及查找,但
是除了这些基本功能,有时候我们还需要
知道各个分数段成绩的学生人数、某门课
程及格人数或某门课程的平均分数等等,
而这些问题都属于汇总统计的范畴。因此
我们开发了汇总统计模块来解决这些问题。18.2任务分析“按语文成绩各分数段统计学生的人数”
要求我们统计出语文成绩各分数段的人数,常规的做法是先遍历结构体数组中的数据
元素,并依次判断当前记录的语文成绩所
处的成绩区间,如果当前记录的语文成绩
分数处于某个区间,则该区间的总人数加
一。18.2任务分析(续)本模块的解题思路如图所示:18.3任务实施本模块N-S图如下图所示:汇总统计模块的N-S图18.3任务实施(续)本功能模块的函数实现原型如:int
statistic(stStu
student[],intlength)其中参数student为用于保存待统计学生记录的数组,length为记录个数。struct
student{int
number;
char
name[
20
];float
chinese;float
math;float
english;};#
define
N
10main(
){struct
studentinti,index;stud
[N];intarrayresult[10]={0};printf(“请输入学生信息:\n”);for(i=0;i<N;i++){fflush(stdin);
printf(“学号:”);
scanf(”%d”,&stud
[i].number);printf(“姓名:”);
scanf(”%s”,stud
[i].name);printf(“语文成绩:”);
scanf(”%d”,&
stud
[i].chinese);printf(“数学成绩:”);scanf(”%d”,&
stud
[i].math);printf(“英语成绩:”);scanf(”%d”,
&
stud
[i].english);}for(i=0;i<N;i++){index=stud[i].chinese/10;arrayresult[index]++;}for(i=0;i<10;i++)
printf(“%d分到%d分的人数为%d\n”,i*10,i*10+9,arrayresult[i]);}18.5项目完善本模块以“按学生的总分成绩进行排序”为例进行开发,实现的主要步骤如下:1、根据当前记录计算出当前记录的学生成绩总分;2、选择一种排序算法如冒泡法、选择法等对总分进行排序。下面以选择排序法为例,分析本模块的实现思路,其对应的N-S图如下:18.5项目完善(续)按总成绩排序模块N-S图#include
"stdio.h"#define
N
5struct
student{char
name[20];int
chinese;int
math;int
english;int
avg;};••main(){inti,n;structstudentstud[N],t;•••••••••for(i=0;i<N;i++){printf("请输入第%d学生姓名:",i+1);scanf("%s",stud[i].name);printf("请输入语文成绩:");
scanf("%d",&stud[i].chinese);printf("请输入数学成绩:");scanf("%d",&stud[i].math);printf("请输入英语成绩:");
scanf("%d",&stud[i].english);}for(i=0;i<N;i++)•stud[i].avg=(stud[i].chinese+stud[i].math+stud[i].english)/3;•for(n=N;n>1;n--)for(i=0;i<n-1;i++)if(stud[i]>stud[i+1]){t=stud[i];stud[i]=stud[i+1];stud[i+1]=t;}••printf(“排序后学生的信息:");for(i=0;i<N;i++){
printf(“第%d名学生的成绩:",i+1);printf("姓名:%s\n",stud[i].name);printf("语文:%d\n",stud[i].chinese);printf("数学:%d\n",stud[i].math);printf(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑智能玻璃行业三年发展洞察报告
- 信息技术咨询行业三年发展洞察报告
- 2024年数字货币金融项目建议书
- 八年级数学补考卷
- 2024年仁爱版三年级英语(上册)模拟考卷及答案(各版本)
- 食谱英文翻译(RecipeEnglishtranslation)
- 金属电镀及层压行业发展趋势研判及战略投资深度研究报告
- 2024年电磁学计量标准器具合作协议书
- 2024年公路旅客运输服务项目建议书
- 书法服务行业三年发展预测分析报告
- 向人生的筑梦者致敬
- 空调系统的应急预案
- 中医治疗盆腔炎经验浅谈
- 办公室卫生标准值日表
- 医院等级评审必备资料之病理科工作制度汇编一
- 阿特拉斯离心机ZH原理-保养内容培训资料
- 河北工程大学毕业设计
- 生物专业英语课件Biology
- (推荐)外研版(新课标)七年级上册英语单词及每单元mp3听力
- 农村土地承包经营权确权登记技术设计书
- 物业管理国际质量标准—教案
评论
0/150
提交评论