⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 text1.c

📁 这是用C语言写的一个学生成绩管理系统
💻 C
字号:
//#include "StdAfx.h" 
#include "stdio.h" 
#include "conio.h" 
#include "stdlib.h" 
#include "string.h" 
FILE *fp; 

struct record 
{ 
char num[20]; 
char name[20]; 
char classes[20]; 
char sex[10]; 
char chinese[520]; 
char maths[520]; 
char english[520]; 
}student[500]; 

int n;//外部变量n为文件中的纪录数 
void save();//保存函数 即写入文件 
void mainmemu();//主菜单 
void amend();//修改文件 
void del();//删除菜单 
void delall();//删除全部函数 
void delone();//个别删除菜单 
void search(); 
void add(); 

int main(int argc, char* argv[]) 
{ 
save(); 
while (1) 
mainmemu(); 
return 1; 
} 

void mainmemu()//主菜单 
{ 
int choice; 
system ("cls"); 
printf ("\n\t\t******************学生信息管理系统****************"); 
printf ("\n\t\t* *"); 
printf ("\n\t\t* 1.添加学生信息 *"); 
printf ("\n\t\t* *"); 
printf ("\n\t\t* 2.修改学生信息 *"); 
printf ("\n\t\t* *"); 
printf ("\n\t\t* 3.删除学生信息 *"); 
printf ("\n\t\t* *"); 
printf ("\n\t\t* 4.查询学生信息 *"); 
printf ("\n\t\t* *"); 
printf ("\n\t\t* 5.保存 *"); 
printf ("\n\t\t* *"); 
printf ("\n\t\t* 6.退出 *"); 
printf ("\n\t\t**************************************************"); 
printf ("\n\n\t请输入数字进入对应菜单:"); 
getch (); 
choice=getch (); 
switch(choice) 
{ 
case '1': add();break; 
case '2': amend();break; 
case '3': del(); break; 
case '4': search();break; 
case '5': save();break; 
case '6': exit(0);break; 
default : mainmemu(); 
} 
} 
void save () 
{ 
if ((fp=fopen("student.bin","rb"))==NULL) 
{ 
printf ("\n\t\t学生信息文件不存在"); 
if ((fp=fopen("student.bin","wb"))==NULL) 
{ 
printf ("\n\t\t建立文件失败"); 
exit (0); 
} 
else 
{ 
printf ("\n\t\t学生信息文件已经建立"); 
printf ("\n\t\t请按任意键进入主菜单:"); 
getch (); 
return ; 
} 
exit (0); 
} 
fseek (fp,0,2);//文件位置指针移动到文件末尾 
if (ftell (fp)>0)//文件不为空 
{ 
rewind (fp);//文件位置指针移动到文件开始位置 
for (n=0;!feof(fp)&&fread(&student[n],sizeof (struct record),1,fp);n++); 
printf ("\n\t\t文件导入成功 "); 
printf ("\n\t\t请按任意键返回主菜单"); 
getch (); 
return; 
} 
printf ("\n\t\t文件导入成功"); 
printf ("\n\t\t学生信息文件中无任何记录"); 
printf ("\n\t\t请按任意键返回主菜单"); 
getch (); 
return; 
} 

void amend ()//修改函数 输入学生学号删除 再添加 
{ 

char c; 
del (); 
printf ("是否添加新信息? (Y/N)"); 
getch (); 
c=getch(); 
if (c=='y'||c=='Y') 
add(); 
else 
return ; 
} 

void del() //删除菜单 
{ 
int z; 
system("cls"); 
printf("\n\t\t******************删除菜单******************"); 
printf("\n\t\t*****************1.删除全部*****************"); 
printf("\n\t\t*****************2.删除个别*****************"); 
printf("\n\t\t********************************************"); 
getch (); 
z=getch (); 
switch(z) 
{ 
case '1': delall(); break; 
case '2':delone();break; 
default : mainmemu(); 
} 
} 


void delall()//删除所有 
{ 
char q; 
printf("\n\t\t确认删除所有记录?(y/n)"); 
getch(); 
q=getch(); 
if(q=='y'||q=='Y') 
{ 
fclose (fp); 
if((fp=fopen("student.bin","wb"))==NULL) 
{ 
printf ("\n\t\t不能打开文件,删除失败"); 
save(); 
} 
n=0; 
printf ("\n\t\t记录已删除,按任意键返回主菜单"); 
getch (); 
return ; 
} 
else 
return ; 
} 

void delone()//个别删除 
{ 
char mingzi[20]; 
int u; 
printf ("请输入要删除学生姓名:"); 
scanf ("%S",mingzi); 
for (u=0;u<n;u++) 
{ 
if(strcmp(mingzi,student[u].name)) del(); 
} 
} 
void search() 
{ 
char mingzi[20]; 
int u; 
printf ("请输入要查询学生姓名:"); 
scanf ("%S",mingzi); 
for (u=0;u<n;u++) 
{ 
if(strcmp(mingzi,student[u].name)) 
{ 
printf ("\n学号:%s",student[n].num); 
printf ("\n姓名:%s",student[n].name); 
printf ("\n班级:%s",student[n].classes); 
printf ("\n性别:%s",student[n].sex); 
printf ("\n语文成绩:%s",student[n].chinese); 
printf ("\n数学成绩:%s",student[n].maths); 
printf ("\n英语成绩:%s",student[n].english); 
} 
} 
return; 
} 
void add()//添加函数 
{ 
system("CLS"); 
printf ("\n\t\t\t**********请输入学生信息********"); 
printf ("\n请输入学号:"); 
scanf ("%s",student[n].num); 
printf ("\n请输入姓名:"); 
scanf ("%s",student[n].name); 
printf ("\n请输入班级:"); 
scanf ("%s",student[n].classes); 
printf ("\n请输入性别:"); 
scanf ("%s",student[n].sex); 
printf ("\n请输入语文成绩:"); 
scanf ("%s",student[n].chinese); 
printf ("\n请输入数学成绩:"); 
scanf ("%s",student[n].maths); 
printf ("\n请输入英语成绩:"); 
scanf ("%s",student[n].english); 
n++; 
printf("\n\t\t是否继续添加?(Y/N):"); 
if (getch()=='y'||getch()=='Y') 
add(); 
return; 
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -