![]() |
#2
waly882011-12-24 12:24
|

![]() |
#2
waly882011-12-24 12:24
现在不用了吧,我有,刚看到!
|
![]() |
#3
C、Gege2011-12-24 13:13
我用C++6.0编的,希望能帮到你··
不过我还是希望你自己做一个,这样会对自己有很大提高。 #include "stdio.h" #include "string.h" #include "stdlib.h" #define STU_NUMBER 100 #define SCORE_NUMBER 3 int ZONGRENSHU=0;/*全局变量总人数*/ typedef struct{ char xuehao[20]; char name[20]; char sex[2]; float score[SCORE_NUMBER]; float sum; float ave; }student; student stu[STU_NUMBER];/*最大学生人数*/ student temp_stu;/*临时排序学生变量*/ /*功能菜单*/ caidan() { printf("\t\t\t ☆学生管理系统☆\n\n"); printf("\t\t\t1. 录 入 学 生 信 息\n"); printf("\t\t\t2. 显 示 学 生 信 息\n"); printf("\t\t\t3. 排 序 学 生 信 息\n"); printf("\t\t\t5. 查 找 学 生 信 息\n"); printf("\t\t\t4. 追 加 学 生 信 息\n"); printf("\t\t\t6. 删 除 学 生 信 息\n"); printf("\t\t\t7. 修 改 学 生 信 息\n"); printf("\t\t\t8. 保 存 学 生 信 息\n"); printf("\t\t\t9. 读 取 学 生 信 息\n"); printf("\t\t\t0. 退 出 管 理 系 统\n"); } /*输入学生信息*/ int input() { int i=0,j=0; char ch; for(i;;i++) { ZONGRENSHU++; j=0; printf("请输入学生学号:");fflush(stdin);gets(stu[i].xuehao); printf("请输入学生姓名:");fflush(stdin);gets(stu[i].name); printf("请输入学生性别:");fflush(stdin);gets(stu[i].sex); printf("请输入语文成绩:");scanf("%f",&stu[i].score[j]);j++; printf("请输入数学成绩:");scanf("%f",&stu[i].score[j]);j++; printf("请输入英语成绩:");scanf("%f",&stu[i].score[j]); for(j=0;j<3;j++){stu[i].sum+=stu[i].score[j];} stu[i].ave=stu[i].sum/3; printf("共有%d个学生的信息\n",ZONGRENSHU); printf("是否继续输入?y/n:"); fflush(stdin); scanf("%c",&ch); if(ch=='n') break; } return ZONGRENSHU; } /*输出学生信息*/ output(int ZONGRENSHU) { int i=0; printf("学号\t姓名\t性别\t语文\t数学\t英语\t总分\t平均成绩\n"); for (i;i<ZONGRENSHU;i++) {printf("%s\t",stu[i].xuehao); printf("%s\t",stu[i].name); printf("%s\t",stu[i].sex); printf("%.2f\t",stu[i].score[0]); printf("%.2f\t",stu[i].score[1]); printf("%.2f\t",stu[i].score[2]); printf("%.2f\t",stu[i].sum); printf("%.2f\t",stu[i].ave); printf("\n");} printf("共有%d个学生的信息\n",ZONGRENSHU); } /*排序学生信息*/ sort(int ZONGRENSHU) { int i=0,j=0; for (i;i<ZONGRENSHU-1;i++) { for (j;j<ZONGRENSHU-1-i;j++) {if(stu[j].sum>stu[j+1].sum); temp_stu=stu[j];stu[j]=stu[j+1];stu[j+1]=temp_stu;} printf("共有%d个学生的信息\n",ZONGRENSHU); } printf("排序之后:\n"); i=0; printf("学号\t姓名\t性别\t语文\t数学\t英语\t总分\t平均成绩\n"); for (i;i<ZONGRENSHU;i++) {printf("%s\t",stu[i].xuehao); printf("%s\t",stu[i].name); printf("%s\t",stu[i].sex); printf("%.2f\t",stu[i].score[0]); printf("%.2f\t",stu[i].score[1]); printf("%.2f\t",stu[i].score[2]); printf("%.2f\t",stu[i].sum); printf("%.2f\t",stu[i].ave); printf("\n");} } /*添加学生信息*/ int add(int ZONGRENSHU) { int i,j=0; char ch; i=ZONGRENSHU; for(i;;i++) { ZONGRENSHU++; j=0; printf("请输入学生学号:");fflush(stdin);gets(stu[i].xuehao); printf("请输入学生姓名:");fflush(stdin);gets(stu[i].name); printf("请输入学生性别:");fflush(stdin);gets(stu[i].sex); printf("请输入语文成绩:");scanf("%f",&stu[i].score[j]);j++; printf("请输入数学成绩:");scanf("%f",&stu[i].score[j]);j++; printf("请输入英语成绩:");scanf("%f",&stu[i].score[j]); for(j=0;j<3;j++){stu[i].sum+=stu[i].score[j];} stu[i].ave=stu[i].sum/3; printf("共有%d个学生的信息\n",ZONGRENSHU); printf("是否继续追加?y/n:"); fflush(stdin); scanf("%c",&ch); if(ch=='n') break; } return ZONGRENSHU; } /*查找学生消息*/ find(int ZONGRENSHU) { int i=0; char find_name[20]; printf("请输入您所查找的学生姓名:"); fflush(stdin); gets(find_name); printf("系统为您搜索到的信息:\n"); for (i;i<ZONGRENSHU;i++) { if(strcmp(find_name,stu[i].name)==0) { printf("学号\t姓名\t性别\t语文\t数学\t英语\t总分\t平均成绩\n"); printf("%s\t",stu[i].xuehao); printf("%s\t",stu[i].name); printf("%s\t",stu[i].sex); printf("%.2f\t",stu[i].score[0]); printf("%.2f\t",stu[i].score[1]); printf("%.2f\t",stu[i].score[2]); printf("%.2f\t",stu[i].sum); printf("%.2f\t",stu[i].ave);} else {printf("没有您所输入的学生");} } } /*删除学生信息*/ delete_student(int ZONGRENSHU) { int i,k=0; char delete_xuehao[20]; char ch,y; printf("请输入您所删除学生的学号:"); fflush(stdin); gets(delete_xuehao); for(i=0;i<ZONGRENSHU;i++) {if(strcmp(delete_xuehao,stu[i].xuehao)==0) k=i; printf("该学生的信息:\n"); printf("学号\t姓名\t性别\t语文\t数学\t英语\t总分\t平均成绩\n"); printf("%s\t",stu[i].xuehao); printf("%s\t",stu[i].name); printf("%s\t",stu[i].sex); printf("%.2f\t",stu[i].score[0]); printf("%.2f\t",stu[i].score[1]); printf("%.2f\t",stu[i].score[2]); printf("%.2f\t",stu[i].sum); printf("%.2f\t",stu[i].ave); printf("\n确定删除(y)?\n"); fflush(stdin); scanf("%c",&y); if(y=='y') {for(k;k<ZONGRENSHU-1;k++) {stu[k]=stu[k+1];} ZONGRENSHU--;/*总人数减一*/ }/*if*/ printf("是否继续删除学生信息?y/n"); fflush(stdin); scanf("%c",&ch); if(ch=='n') break; } return ZONGRENSHU; } /*修改学生信息*/ modify(int ZONGRENSHU) { int i=0; int XGXX;/*修改选项变量*/ char modify_xuehao[20];/*修改的学生学号*/ printf("请输入您所修改学生信息的学号:"); fflush(stdin); gets(modify_xuehao); for(i;i<ZONGRENSHU;i++) {if(strcmp(modify_xuehao,stu[i].xuehao)==0) {printf("该学生的信息:\n"); printf("学号\t姓名\t性别\t语文\t数学\t英语\t总分\t平均成绩\n"); printf("%s\t",stu[i].xuehao); printf("%s\t",stu[i].name); printf("%s\t",stu[i].sex); printf("%.2f\t",stu[i].score[0]); printf("%.2f\t",stu[i].score[1]); printf("%.2f\t",stu[i].score[2]); printf("%.2f\t",stu[i].sum); printf("%.2f\t\n",stu[i].ave);} else {printf("没有您所输入的学生\n");} }/*for*/ printf("\t\t\t1.修改学生学号\n"); printf("\t\t\t2.修改学生姓名\n"); printf("\t\t\t3.修改学生性别\n"); printf("\t\t\t4.修改语文成绩\n"); printf("\t\t\t5.修改数学成绩\n"); printf("\t\t\t6.修改英语成绩\n"); printf("请输入修改选项:"); scanf("%d",&XGXX); switch(XGXX) {case 1:printf("请输入该生学号:");fflush(stdin);gets(stu[i].xuehao);break; case 2:printf("请输入该生姓名:");fflush(stdin);gets(stu[i].name);break; case 3:printf("请输入该生性别:");fflush(stdin);gets(stu[i].sex);break; case 4:printf("请输入语文成绩:");scanf("%f",stu[i].score[0]);break; case 5:printf("请输入数学成绩:");scanf("%f",stu[i].score[1]);break; case 6:printf("请输入英语成绩:");scanf("%f",stu[i].score[2]);break; default :printf("输入错误,请重新输入:\n");}/*swich*/ } /*保存文件*/ save(ZONGRENSHU) { FILE *fp; int i=0; if ((fp=fopen("D:\\学生管理器.txt","wb"))==NULL) {printf("保存文件失败!\n"); exit(0);} for (i;i<ZONGRENSHU;i++) {fwrite(&stu[i],sizeof(student),1,fp);} printf("保存文件成功!\n"); fclose(fp); return i-1; } /*读取文件*/ load(ZONGRENSHU) { int i=0; FILE *fp; if ((fp=fopen("D:\\学生管理器.txt","rb"))==NULL) {printf("打开文件失败!\n"); exit(0);} printf("打开文件成功!\n"); while(!feof(fp)) {fread(&stu[i],sizeof(student),1,fp); i++;} fclose(fp); return i-1; } DENGLU()/*登录函数*/ { char mima[20]; int i=0; printf("请输入登录密码:");fflush(stdin);gets(mima); if(mima!="123456") /*密码是123456*/ {printf("输入错误!退出!");exit(0);} }/*DENGLU—END*/ main() { int XZGN; printf("\t欢迎进入 |欢宝| 学生管理系统!\n"); DENGLU();/*调用登录函数!*/ for(;;) { caidan(); printf("请选择功能项:"); scanf("%d",&XZGN); switch(XZGN){ case 1:ZONGRENSHU=input();break; case 2:output(ZONGRENSHU);break; case 3:sort(ZONGRENSHU);break; case 4:ZONGRENSHU=add(ZONGRENSHU);break; case 5:find(ZONGRENSHU);break; case 6:ZONGRENSHU=delete_student(ZONGRENSHU);break; case 7:modify(ZONGRENSHU);break; case 8:save(ZONGRENSHU);break; case 9:ZONGRENSHU=load(ZONGRENSHU);break; case 0:exit(0); default:printf("输入错误,请重新输入:\n"); } } return 0; } |
![]() |
#4
C、Gege2011-12-24 13:16
回复 3楼 C、Gege
里面的修改、保存、读取文件选项有一点小问题,也希望广大C友指正,小弟拜谢!
![]() |
![]() |
#5
clyuzhe2012-12-16 21:48
回复 4楼 C、Gege
- -还有没有这个 信息管理系统?
|