📄 student.c
字号:
#include "student.h"
int numStus=0;
StuInfo *records=NULL;;
char savedTag=0;
int arraySize;
char *subject[]={"语文","数学","英语","物理","化学"};
int main()
{
records=(StuInfo *)malloc(sizeof(StuInfo)*INITIAL_SIZE);
if(records==NULL)
{
printf("memory fail!");
exit(-1);
}
arraySize=INITIAL_SIZE;
printf("\n");
printf("\t****************************\n");
printf("\t* 这是一个 *\n");
printf("\t* 学生成绩管理程序 *\n");
printf("\t* 可以对学生成绩进行管理 *\n");
printf("\t* 欢迎使用管理程序 *\n");
printf("\t****************************\n");
printf("\n");
handle_menu();
}
void handle_menu(void)
{
for( ; ; ) {
switch(menu_select())
{
case 0:
addRecord();
break;
case 1:
modifyRecord();
break;
case 2:
display();
break;
case 3:
queryInfo();
break;
case 4:
removeRecord();
break;
case 5:
sortInfo();
break;
case 6:
saveRecords();
break;
case 7:
loadRecords();
break;
case 8:
newRecords();
break;
case 9:
quit();
}
}
}
int menu_select()
{
char s[2];
int cn=0;
printf("\n");
printf("\t0.增加学生信息\n");
printf("\t1.修改学生信息\n");
printf("\t2.显示学生信息\n");
printf("\t3.查询学生信息\n");
printf("\t4.删除学生信息\n");
printf("\t5.对学生信息进行排序\n");
printf("\t6.保存学生信息至记录文件\n");
printf("\t7.从记录文件读取学生信息\n");
printf("\t8.新建学生信息文件\n");
printf("\t9.结束运行\n");
printf("\n\t左边数字对应功能选择,请选0-9:");
for( ; ; )
{
gets(s);
cn=atoi(s);
if(cn==0&&(strcmp(s,"0")!=0))
cn=11;
if(cn<0||cn>9)
printf("\n\t输出错误,重选0-9:");
else
break;
}
return cn;
}
void newRecords(void)
{
char str[5];
if(numStus!=0)
{
if(savedTag==1)
{
printf("现在已经有记录,选择处理已有记录的方法。\n");
printf("是否保存原来的记录?(Y/N)");
gets(str);
if(str[0]!='n'&&str[0]!='N')
saveRecords();
}
}
numStus=0;
addRecord();
}
void quit(void)
{
char str[5];
if(savedTag==1)
{
printf("是否保存原来的记录?(Y/N)");
gets(str);
if(str[0]!='n'&&str[0]!='N')
saveRecords();
}
free (records);
exit(0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -