一、实验方法和步骤 1.系统功能模块图
先通过printf、scanf语句获取需要录入的学生人数M,然后用for循环循环M次,依次录入每一个学生的信息;学生四科成绩都获取成功则会自动计算学生的总分和平均分,并输出总分和平均分,提示信息录入成功。
用printf语句打印输出菜单,定义一个新的结构体t;用while(1)语句使该模块进入无限循环,若输入的功能编码不存在,则会一直循环菜单页面,并提示重新输入;若输入编码正确,则会进入相关功能模块;用switch语句跳入需要的功能模块。 所有排序输出均使用选择排序法对数据进行排序并输出 按学号大小输出功能 按学科1成绩高低输出功能 按学科2成绩高低输出功能 按学科3成绩高低输出功能 按学科4成绩高低输出功能 按总分高低输出功能 按平均分高低输出功能
用printf语句打印输出菜单;用while(1)语句使该模块进入无限循环,若输入的功能编码不存在,则会一直循环菜单页面,并提示重新输入;若输入编码正确,则会进入相关功能模块;将所需功能封装为函数,用switch语句跳入需要的功能模块。 按学号/姓名查找功能: 先用scanf语句获取需要查找的学号或姓名,再使用for循环将获取的学号/姓名,与已存储的信息进行比较判断(if语句),判断成功则输出学生信息。
用printf语句打印输出菜单;用while(1)语句使该模块进入无限循环,若输入的功能编码不存在,则会一直循环菜单页面,并提示重新输入;若输入编码正确,则会进入相关功能模块;将所需功能封装为函数,用switch语句跳入需要的功能模块。 所有修改功能均先定义一个a=0,并使用while对该模块进行循环;在该模块中,先使用scanf语句获取需要修改的学生学号,再使用for循环将获取到的学号与已存储的信息进行比较判断(if语句),若能找到需要修改的学生,则可继续输入相关修改信息替换旧信息,并输出修改结果,然后使用continue结束for循环,并将a赋值为1结束while循环;若输入的学号不存在,a的值始终为0,则会一直循环该模块,并提示重新输入。 修改学号功能 修改姓名功能 修改班级功能 修改性别功能: 修改学科1成绩功能 修改学科2成绩功能 修改学科3功能 修改学科4功能
先用printf、scanf语句获取所需要统计的分数段平均分J、m,然后使用for循环遍历每一个学生的平均分,并使用if语句判断每一个学生的平均分是否处于J~m区间内,判断为真则输出该学生信息,并执行s++(人数加1)。
使用for循环获取每一个学生的学科1、学科2、学科3、学科4的成绩,并分类相加得出每一门学科的总分数(sum_1、sum_2、sum_3、sum_4),将总分数分别除以总人数M,即可得到各科平均分average。
用printf语句打印输出菜单;用while(1)语句使该模块进入无限循环,若输入的功能编码不存在,则会一直循环菜单页面,并提示重新输入;若输入编码正确,则会进入相关功能模块;将所需功能封装为函数,用switch语句跳入需要的功能模块。 按学号/姓名删除功能: 先用scanf语句获取需要删除的学生学号或姓名,再使用for循环将获取的学号/姓名,与已存储的信息进行比较判断(if语句),判断成功则定位至i处,从i开始的学生,结构体位置全部与前面一个结构体位置交换(向前挪一位),交换完成后,所需删除的学生结构体便会处于最后一位,然后将M(学生总人数)减一,即可删除需要删除的学生信息。 按学号删除: 按姓名删除: |
二、实验结果
①输出信息菜单 ②按学号大小输出 ③按学科1成绩高低输出 ④按学科2成绩高低输出 ⑤按学科3成绩高低输出 ⑥按学科4成绩高低输出 ⑦按学科平均成绩高低输出 ⑧按学科总成绩高低输出
①查找菜单 ②按学号查找 ③按姓名查找
①修改学生信息菜单 ②修改学生学号 ③修改学生姓名 ④修改学生班级 ⑤修改学生性别 ⑥修改学生学科1的成绩 ⑦修改学生学科2的成绩 ⑧修改学生学科3的成绩 ⑨修改学生学科4的成绩
例如:需要统计平均分未达到60分的学生,则输入0空格60,就会出现相应分数段的学生信息。
①删除信息菜单 ②按学号删除学生信息 ③按姓名删除学生信息 |
C语言制作简易学生管理系统
于 2024-07-08 15:11:33 首次发布