中小学绩效管理系统
#包含“conio.h”
#包含" string.h "
#包含" stdlib.h "
void look();/*声明查看函数*/
void save();/*声明保存函数*/
void搜索名称();/*声明按名称查看函数*/
void search _ number();/*声明按学号查看函数*/
void订单();/*声明排序函数*/
void del();/*声明删除函数*/
int openl();/*声明开放函数*/
void welcome();/*申报我的个人信息功能*/
void类型();/*声明输入函数*/
void see();/*声明打开和查看文件的函数*/
Structure student/*定义学生信息的结构类型*/
{
字符编号[15];/*学生ID */
char name[20];/*姓名*/
char sex[4];/*性别*/
int英语;/*英语成绩*/
int数学;/*数学成绩*/
int中文;/*语言成绩*/
浮动aver/*平均成绩*/
浮动总和;/*总分*/
} stu[100];
int n;/*声明全局变量*/
Void main() /*主要功能是用户的操作界面*/
{
system(" color 1E ");/*设计文本颜色*/
int b,flag = 0;/*声明局部变量*/
While(1) /*循环下列信息*/
{
printf(" \ n \ t \ t \ t欢迎使用学生成绩管理系统!\ n ");
printf(" \ n \ t \ t \ t # # making \ n ");
printf(" \ t \ t \ t-\ n ");
Printf("\t\t\t1。输入学生信息\ n \ n ");/*输入学生的信息*/
Printf("\t\t\t2。查看输入的学生信息\ n \ n ");/*查看输入的学生信息*/
Printf("\t\t\t3。按姓名查看学生信息\ n \ n ");/*按姓名查看学生信息*/
Printf("\t\t\t4。按学号查看学生信息\ n \ n ");/*按学号查看学生信息*/
Printf("\t\t\t5。按平均分排序\ n \ n ");/*排序*/
Printf("\t\t\t6。删除学生信息\ n \ n”);/*删除学生信息*/
Printf("\t\t\t7。保存学生信息\ n \ n ");/*保存*/
Printf("\t\t\t8。打开文件\ n \ n ");/*打开文件*/
Printf("\t\t\t9。我的个人信息\ n \ n”);/*我的个人信息*/
Printf("\t\t\t0。退出\ n \ n ");/*退出*/
printf(" \ t \ t \ t请输入您的选择:");
scanf("%d ",& ampb);
开关(b)
{
case 1:type();打破;/*调用录入学生信息的函数*/
案例二:look();打破;/*调用视图函数*/
案例三:search _ name();打破;/*调用名称视图函数*/
案例四:search _ number();打破;/*调用学号查看功能*/
案例五:order();打破;/*呼叫排序功能*/
案例6:del();打破;/*调用删除函数*/
案例7:save();打破;/*调用保存函数*/
案例八:见();打破;/*调用打开文件函数*/
案例九:欢迎();打破;/*调用我的个人信息功能*/
案例0:flag = 1;打破;/*退出SWITCH语句*/
默认值:printf ("Error!");
}
如果(标志)断开;/*如果选择0,将退出循环*/
}
}
Void welcome() /*我的个人信息功能*/
{
系统(“CLS”);
printf(" \ n \ n \ t \ t-");/*在屏幕上输出信息*/
printf(" \ n \ n \ n \ n \ t \ t name:# # # ");
printf(" \ t \ t \ tSex:# \ n ");
printf(" \ t \ tAge:# \ n ");
printf(" \ n \ t \ t-n \ n \ n ");
printf(" \ t \ t小学:# # # # # \ n \ n ");
printf(" \ t \ t高级中学:# # # # \ n \ n ");
Printf("\t\tS高中:# # # # # \ n \ n ");
printf(" \ t \ t大学:# # # # # \ n \ n ");
printf(" \ n \ n \ t \ t按任意键返回欢迎屏幕!");
getch();/*按任意键返回主功能*/
}
Void type() /*定义了录入学生信息的函数*/
{
系统(“CLS”);
int I;/*定义局部变量*/
printf(" \ t \ tout输入您要输入的学生信息编号:");
scanf("%d ",& ampn);
for(I = 0;我& ltn;I++) /*输入每个学生的信息*/
{
printf(" \ n \ t \ t \ t-\ n ");
Printf ("\ t \ t学号:");
scanf("%s ",& amp斯图[我]。num);/*输入学号*/
printf(" \ t \ t \ tname:");
scanf("%s ",& amp斯图[我]。姓名);/*输入姓名*/
printf(" \ t \ t \ t gender:");
scanf("%S ",& amp斯图[我]。性);/*输入性别*/
Printf ("\ t \ t英语:");
scanf("%d ",& amp斯图[我]。英语);/*输入英语成绩*/
printf(" \ t \ t \ t math:");
scanf("%d ",& amp斯图[我]。数学);/*输入数学成绩*/
printf(" \ t \ t \ t语言:");
scanf("%d ",& amp斯图[我]。中文);/*输入语言分数*/
斯图[我]。aver=((float)stu[i]。english+(float)stu[i]。math+(float)stu[i]。语文)/3;/*计算平均分数*/
斯图[我]。sum=(float)stu[i]。english+(float)stu[i]。math+(float)stu[i]。中文;/*计算总分*/
printf(" \ t \ t \ t平均等级=%4.1f\n ",stu[i]。aver);/*输出平均分*/
printf(" \ t \ t \ t总分=%4.1f\n ",stu[i]。sum);/*输出总分*/
}
printf(" \ n \ n \ t \ t \ t按任意键返回菜单!!");
getch();
save();
}
Void save() /*创建一个文件保存函数*/
{
系统(“CLS”);
FILE * fp/*定义文件指针*/
int I;
If ((FP = fopen ("student.txt "," WB ")= = null)/*打开输出文件*/
{
Printf("无法打开文件!\ n ");
返回;/*终止程序*/
}
for(I = 0;我& ltn;I++) /*将信息写入学生档案*/
if(fwrite(& amp;stu[i],sizeof(结构学生),1,fp)!=1)
Printf("文件写入错误\ n ");
fclose(FP);/*关闭文件*/
printf(" \ n \ n \ n \ n \ t \ t学生信息保存成功!\ n ");
printf(" \ n \ n \ n \ n \ t \ t按任意键返回菜单!!");
getch();
}
Void look() /*定义了视图函数*/
{
系统(“CLS”);
int I;
//n = openl();/*调用openl函数*/
printf(" \ t student ID \ tName \ t gender \ t English \ t math \ t Chinese \ t average \ t total \ n ");
for(I = 0;我& ltn;I++) /*输出所有学生信息*/
{
printf(" % 10s \ t % s \ t % 2s \ t % d \ t % d \ t % d \ t % 3.1f \ t \ t % 6.1f \ n ",stu[i]。num,stu[i]。姓名,
斯图[我]。性,斯图[我]。英语,斯图[我]。数学,斯图[我]。语文,斯图[我]。阿威,斯图[我]。sum);
}
printf(" \ n \ n \ n \ t \ t按任意键返回菜单");
getch();
}
Void search_name() /*按名称查看函数*/
{
系统(“CLS”);
int I;
char name[20];/*声明字符数组*/
printf(" \ t \ t \ t请输入学生姓名:\ n ");
scanf("%s ",名称);
printf(" \ t student ID \ tName \ t gender \ t English \ t math \ t Chinese \ t average \ t total \ n ");
for(I = 0;我& ltn;i++)
If (strcmp (stu [I].name,name) = = 0)/*将输入的名称与结构中的名称进行比较*/
{
printf(" % 10s \ t % s \ t % 2s \ t % d \ t % d \ t % d \ t % 3.1f \ t \ t % 6.1f \ n ",stu[i]。num,stu[i]。姓名,
斯图[我]。性,斯图[我]。英语,斯图[我]。数学,斯图[我]。语文,斯图[我]。阿威,斯图[我]。sum);
printf(" \ n \ n \ n \ t \ t按任意键返回菜单");
}
getch();
}
Void search_number() /*定义按学号查看的函数*/
{
系统(“CLS”);
int I;
字符编号[15];/*声明字符数组*/
printf(" \ t \ t \ t请输入您的学号:\ n ");
scanf("%s ",数字);
printf(" \ t student ID \ tName \ t gender \ t English \ t math \ t Chinese \ t average \ t total \ n ");
for(I = 0;我& ltn;i++)
If (strcmp (stu [I].num,number) = = 0)/*将输入的学生编号与结构中的学生编号进行比较*/
printf(" % 10s \ t % s \ t % 2s \ t % d \ t % d \ t % d \ t % 3.1f \ t \ t % 6.1f \ n ",stu[i]。num,stu[i]。姓名,
斯图[我]。性,斯图[我]。英语,斯图[我]。数学,斯图[我]。语文,斯图[我]。阿威,斯图[我]。sum);
printf(" \ n \ n \ n \ t \ t按任意键返回菜单");
getch();
}
Voideorder ()/*定义排序函数*/
{
系统(“CLS”);
int i,j;
char a;
结构学生温度;/*声明结构变量*/
printf(" \ t student ID \ tName \ t gender \ t English \ t math \ t Chinese \ t average \ t total \ n ");
for(I = 0;我& ltn;I++) /*对数据进行排序*/
{
for(j = I+1;j & ltn;j++)
如果(斯图[我]。sum & lt斯图[j]。总和)
{
temp = stu[I];
stu[I]= stu[j];
stu[j]= temp;
}
printf(" % 10s \ t % s \ t % 2s \ t % d \ t % d \ t % d \ t % 3.1f \ t \ t % 6.1f \ n ",stu[i]。num,stu[i]。姓名,
斯图[我]。性,斯图[我]。英语,斯图[我]。数学,斯图[我]。语文,斯图[我]。阿威,斯图[我]。sum);
}
getch();
Printf("要保存吗?(y或n)");
getchar();
scanf("%c ",& ampa);
If(a=='y') /*保存已排序的文件*/
save();
其他
printf(" exit ");
getch();
}
Void del() /*定义删除学生信息的函数*/
{
int I;
char a;
char name[20];
系统(“CLS”);
printf(" \ t \ t \ t输入学生姓名:\ n ");
scanf("%s ",名称);
系统(“CLS”);
printf(" \ t student ID \ tName \ t gender \ t English \ t math \ t Chinese \ t average \ t total \ n ");
for(I = 0;我& ltn;i++)
if(strcmp(stu[i].name,name)==0)
{
printf(" % 10s \ t % s \ t % 2s \ t % d \ t % d \ t % d \ t % 3.1f \ t \ t % 6.1f \ n ",stu[i]。num,stu[i]。姓名,
斯图[我]。性,斯图[我]。英语,斯图[我]。数学,斯图[我]。语文,斯图[我]。阿威,斯图[我]。sum);
getch();
Printf("真的删除?(y或n)");
getchar();
scanf("%c ",& ampa);
If(a=='y') /*是否要删除此信息*/
{
for(;我& ltn;i++)
stu[I]= stu[I+1];
n = n-1;
Printf("您已经删除了信息");
}
其他
printf(" exit ");
getch();
}
save();
}
Int openl() /*定义打开文件的函数*/
{
系统(“CLS”);
int I;
FILE * fp
if((fp=fopen("student.txt "," Rb ")= = NULL)
{
printf("无法打开文件。\ n ");
退出(0);
}
for(I = 0;!feof(FP);i++)
弗雷德(& ampstu[i],sizeof(struct student),1,FP);
fclose(FP);
返回(I-1);
}
Void see() /*打开并查看文件*/
{
系统(“CLS”);
int I;
n = openl();
Printf("文件打开成功!\ n ");
Printf("按任意键查看!\ n ");
getch();
printf(" \ t student ID \ tName \ t gender \ t English \ t math \ t Chinese \ t average \ t total \ n ");
for(I = 0;我& ltn;I++) /*输出所有学生信息*/
{
printf(" % 10s \ t % s \ t % 2s \ t % d \ t % d \ t % d \ t % 3.1f \ t \ t % 6.1f \ n ",stu[i]。num,stu[i]。姓名,
斯图[我]。性,斯图[我]。英语,斯图[我]。数学,斯图[我]。语文,斯图[我]。阿威,斯图[我]。sum);
}
printf(" \ n \ n \ n \ t \ t按任意键返回菜单");
getch();