中。原始数据中学号、姓名、课程名称、课程学分、课程编号与学生成绩属不同的
类型的数据,故在读入时,要用不同的方式进行读入和输出:分别读入学号和姓名
再用一个 for 循环进行统一处理学生的分数。
(2) 函数 Sort():求出每个学生的加权平均分,并按加权平均分排名。在求加权平均分
时,用学生分数乘以这科对应的学分,再用求到的和除以。在求加权平均分时要进
四舍五入:ave=(int)(10*ave+0.5)/10.0。
(3) 函数 Produce_MingC27():创建一个文件,文件中显出学生全部信息。学生信息数
据类型不同,所以输入方式不同。
函数 Analysis_1():求出每科的标准差,标准差公式为:
中:y 为课程标准差; 为第 i 个学生成绩; 为本门课程的算术平均分成绩,
N 为学生人数。
(4) 函数 Analysis_2():统计各科各分数段的人数。用双重循环对每个学生每科进行比
较判断此分在哪能个分数段中,又因为有多分数段,帮用多分支选择——switch 语
句。
(5) 函数 Unpass():统计不及格人数。小于 60 分的为不及格,而由于一个人不及格的
科目可能有几门,则用一个变量 temp 去统计一个人不及格的科目数。
(6) 函数 Good_student():统计优秀学生。优秀学生只满足三个条件中的任意一个条件
即可,在判断中用逻辑或。
(7) 函数 Produce_CJT0112()、Print_MingC27()是按要求生成文件。生成文件时,先判
断能否能打开文件,是发写的方式打开。
(8) Print_original_data()、Print_MingC27()、Print_KEC27()、Print_CJT0112()是几个按
照要求打印的函数。
(9) Print_original_data()、Print_MingC27()、Print_KEC27()、Print_CJT0112()是几个按
照要求打印的函数。
四、系统使用说明
要注意格式“学号 姓名 英语 C 语言 数学 人文 毛论 ”、“ 编号 课程名称 课程学
分”,遵守这样的格式,否则读入的数据就会出问题。
姓名最长不可超过 6 个字节,学号用整型数据表示,各科成绩满分为 100 分,最长的标
题不能超过 100 个字节。
五、测试数据
第一步:在 d 盘中新建两个记事本,“jz0112.txt”、“ jz0112kc.txt”两个文本文档如下: