学生信息管理系统编程(c语言)

来源:百度知道 编辑:UC知道 时间:2024/05/14 04:06:08
急急急~~~~~~~~~
一、 学生信息管理系统

学生信息放在 students.dat 文件中,文件由信息头和学生数据两部分组成:
①文件基本信息头结构定义(可自己扩展)
typedef struct {
unsigned long stuNum; //全体学生人数
float max; //全体学生中的最高分
float min; //全体学生中的最低分
float avg; //全体学生的平均分
}InfoHead;
②每个学生数据基本信息结构定义(可自己扩展)
typedef struct
{
unsigned long no; //学号
char name[10]; //姓名
float score; //成绩
}STU;
实现如下功能:
1、主界面
系统给出功能选择提示,使用者根据功能编号,输入一个数字选择需要执行的功能。
(提示:在 main 函数中完成,对应功能通过函数调用实现)
2、必须实现的基本功能:
① 学生信息录入功能:可以从键盘录入学生信息(输入学号 0 结束输入),存入students.dat
文件中。(要求测试数据不少于8 个,文件生成后需备份用于验收)
② 信息查询功能:可根据学号或姓名或成绩查询所有满足条件的学生的信息,并在屏幕输出。
(说明:查询条件可自己扩展)
③ 数据统计功能:可统计分数段人数。(分数段可自己定义)
3、可选附加功能(提示:可利用临时文件或用链表实现)
① 添加功能:可向已有系统添加学生。(提示:添加后文件信息头内容应有相应的修改)
② 数据删除修改功能:可删除指定学号的学生或修改指定学号的学生信息。
③ 将学生信息按学号或成绩排序,写入文件 stusort.dat
④ 根据排好序的文件实现信息的快速查找。
各位大侠们,如有满意的我可以追加100分的,可以直接发到邮箱huanhuan9268@126.com 谢谢啦~

挺好的一个题目啊

但我可不愿意帮人写作业

网上很多类似的,你可以参考下:
#include <stdio.h>
#include <string.h> struct student {
char name[30];
float math;
float chinese;
float english;
float average;
};

int MenuChoice(void);
int EnterAccount(void);
void Enter(struct student *fst);
void Amend(struct student *src);
void Delete(struct student *next);
void Print(struct student *out);

main()
{
struct student one[100] = {0}, *look = one;
int menu, t;

while ((menu = MenuChoice()) != 0)

if (menu >= 1 && menu <= 4 && (t = EnterAccount())) {
look = one + t;

switch (menu) {
case 1:
Enter(look);
break;
case 2:
if (strcmp(look->name, ""))
printf("学号:%d\n姓名: %s\n语文成绩: %.1f\n数学成绩:%.1f\n英语成绩: %f\n平均"成绩:%.1f\n",
t,