跪求:用C语言编写学生信息管理系统

来源:百度知道 编辑:UC知道 时间:2024/05/14 16:30:48
学生信息放在students.dat文件中, 文件由信息头和学生数据两部分组成:
文件基本信息头结构定义(可自己扩展)
typedef struct{
unsigned long stu Num; //全体学生人数
float max; //全体学生中的最高分
float min; //全体学主中的平均分
}Infohead;
每个学生数据基本信息结构定义(可自己扩展)
typedef struct{
unsigned long no; //学号
char name [10]; //姓名
float score; //成绩
} STU;
实现如下功能:
主界面:系统给出功能选择提示,使用者根据功能编号,输入一个数字选择要执行的功能。(提示:在main函数中完成,对应功能通过函数调用实现)
必须实现的基本功能:
学生信息录入功能;可以从键盘录入学生信息(输入学号0结束输入),存入students.dat文件中。(要求测试数据不少于8个,文件生成后需备份用于验收)
信息查询功能:可根据学号或姓名或成绩查询所有满足条件的学生的信息,并在屏幕输出(说明:查询条件可自己扩展)
可选附加功能:(提示:可利用临时文件或链表实现)
添加功能:可向已有系统添加学生。(提示:添加后文件信息头内容应有相应修改)
数据删除修改功能:可删除指定学号的学生或修改指定学号的学生信息。
将学生信息按学号或成绩排序,写入文件stusort.dat
根据排序的文件实现信息的快速查找。

网上有很多类似的例子,改改就可以了
#include "stdio.h"
#include"stdlib.h"
#include "string.h"
#include "graphics.h"
#include "dos.h"
#define M 200 /*定义常数M,表示最大记录数*/
struct date1
{
int year;
int month;
int day;
};
typedef struct
{
char number[10]; /*学号*/
char name[10]; /*姓名*/
char sex[2]; /*性别*/
struct date1 birthday;/*出生日期*/
int age ; /*年龄*/
float chinese;/*语文*/
float maths; /*数学*/
float english; /*英语*/
}ADDRESS;
int enter(ADDRESS t[]); /*输入学生记录信息*/
void list(ADDRESS t[],int n); /*显示学生信息*/
int menu_select(); /*主菜单函数*/
void print(ADDRESS t); /*显示指定的一条记录*/
int find(ADDRESS t[],int n,char *s) ; /*查找函数*/
void search(ADDRESS t[],int n); /*按姓名查找显示记录*/
int delet(ADDRESS t[],int n); /*删除记录*/
int add(ADDRESS t[],int n); /*插入记录*/
void save(ADDRESS t[],int n,char*s);
i