C语言之学生档案管理
/***********************一叶星尘S欢**********************/
#include
#include
#include
#include
#define MAX 500 //定义储存容量
typedef struct
{
int month,day,year; //出生年月
}BD;
typedef struct
{
int number; //学号
char name[13]; //姓名
char sex[7]; //性别:male or female
BD birth; //出生年月 MM-DD-YY
char addr[35]; //地址
}ST;
ST student[MAX]; //全局变量
/***********************函数声明**************************/
void menu_show(); //显示菜单
void menu(); //菜单响应
char get_menu_choice(); //获取菜单选择信息
FILE*file_operate(char*mode); //文件操作模块
void add(FILE*fp); //添加学生信息
void show(FILE*fp); //显示学生信息
void search(FILE*fp); //查找学生信息
void modify(FILE*fp); //修改学生信息
void del(FILE*fp); //删除学生信息
void f_backup(); //文件备份
void psw_check(); //密码验证
void set_psw(); //设置密码
/************************主函数***************************/
int main()
{
system("cls");
psw_check();
menu();
return 0;
}
/***********************显示菜单**************************/
void menu_show()
{
printf("\n\n");
printf("\t+------------------------------------------+\n");
printf("\t| 学生档案管理系统 |\n");
printf("\t|------------------------------------------|\n");
printf("\t| 【1.输入数据】 | 【5.删除数据】 |\n");
printf("\t| 【2.显示数据】 | 【6.备份数据】 |\n");
printf("\t| 【3.查询数据】 | 【7.设置口令】 |\n");
printf("\t| 【4.修改数据】 | 【0.退出 】 |\n");
printf("\t+------------------------------------------+\n");
}
/*********************菜单响应模块************************/
void menu()
{
while(1)
{
menu_show();
switch(get_menu_choice())
{
case '1':add(file_operate("a"));
system("pause");
system("cls");
break;
case '2':show(file_operate("rb"));
system("pause");
system("cls");
break;
case '3':search(file_operate("rb"));
system("pause");
system("cls");
break;
case '4':modify(file_operate("rb"));
system("pause");
system("cls");
break;
case '5':del(file_operate("r"));
system("pa