#include"stdio.h" #include"string.h" #include"stdlib.h" /*函数声明部分*/ void luru(); void liulan(); void xiugai(); void chaxun(); void shanchu(); void chongxie(); void paixu(); /*记录学生人数*/ int student=0; /*学生信息储存结构体*/ struct student { //用于储存学生信息的结构体 char xuehao[12]; //储存11位学号 char ming[10]; //储存名字 char xingbie; //储存性别,f为女性,m为男性 char chusheng[8]; //储存出生年月,格式为yyyy.mm,若要设为隐私则输入****.** int nianling; //储存年龄,根据出生年月来计算,00表示隐私 char dizhi[6]; //储存寝室号 格式为x(栋)-yyy char dianhua[12]; //储存电话号码 char email[31]; //储存邮箱地址 若要设为隐私则输入* }; #define size 10 //最多储存学生数 struct student stu[size]; //定义结构体数组 int i=0; //用于判断你是否为第一次运行程序 int main() { int a; while(1) { //开始循环 printf("|--------------------------|\n"); printf("|请输入一个数字选择以下功能|\n"); printf("| 输入1:录入学生信息 |\n"); printf("| 输入2:浏览学生信息 |\n"); printf("| 输入3:修改学生信息 |\n"); printf("| 输入4:查询学生信息 |\n"); printf("| 输入5:删除学生信息 |\n"); printf("| 输入6:对学生信息排序 |\n"); printf("| 输入7:关闭程序 |\n"); printf("|--------------------------|\n"); scanf("%d",&a); fflush(stdin); //fflush(stdin);防止输入的回车键影响到数据输入 switch(a) { case 1: system("cls"); //system("cls");清屏 luru(); break; case 2: system("cls"); liulan(); break; case 3: system("cls"); xiugai(); break; case 4: system("cls"); chaxun(); break; case 5: system("cls"); shanchu(); break; case 6: system("cls"); paixu(); break; case 7: return 0; //强行关闭程序 default: { system("cls"); printf("警告!数据错误!请重新输入!\n"); break; } } } return 0; } void chongxie() { int j; //用于for循环 FILE *fp=fopen("student.txt","w+"); //更新学生信息储存文件 if(fp==NULL) //判断能否正常打开文件 printf("系统崩溃!"); for(j=0; j0) { strcpy(jiaohuan,stu[j].xuehao); strcpy(stu[j].xuehao,stu[z+1].xuehao); strcpy(stu[z+1].xuehao,jiaohuan); strcpy(jiaohuan,stu[j].ming); strcpy(stu[j].ming,stu[z+1].ming); strcpy(stu[z+1].ming,jiaohuan); xing=stu[j].xingbie; stu[j].xingbie=stu[z+1].xingbie; stu[z+1].xingbie=xing; strcpy(jiaohuan,stu[j].chusheng); strcpy(stu[j].chusheng,stu[z+1].chusheng); strcpy(stu[z+1].chusheng,jiaohuan); t=stu[j].nianling; stu[j].nianling=stu[z+1].nianling; stu[z+1].nianling=t; strcpy(jiaohuan,stu[j].dizhi); strcpy(stu[j].dizhi,stu[z+1].dizhi); strcpy(stu[z+1].dizhi,jiaohuan); strcpy(jiaohuan,stu[j].dianhua); strcpy(stu[j].dianhua,stu[z+1].dianhua); strcpy(stu[z+1].dianhua,jiaohuan); strcpy(jiaohuan,stu[j].email); strcpy(stu[j].email,stu[z+1].email); strcpy(stu[z+1].email,jiaohuan); } chongxie(); printf("排序完毕\n"); printf("|-----------程序结束--------------|\n"); printf("|--------按任意键退出-------------|\n"); g=getchar(); //输入g程序结束 system("cls"); return; }