学生管理系统.doc

上传人:壹****1 文档编号:544919897 上传时间:2022-09-19 格式:DOC 页数:8 大小:34.50KB
返回 下载 相关 举报
学生管理系统.doc_第1页
第1页 / 共8页
学生管理系统.doc_第2页
第2页 / 共8页
学生管理系统.doc_第3页
第3页 / 共8页
学生管理系统.doc_第4页
第4页 / 共8页
学生管理系统.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《学生管理系统.doc》由会员分享,可在线阅读,更多相关《学生管理系统.doc(8页珍藏版)》请在金锄头文库上搜索。

1、/*学生管理系统调试*/#include #include #include #include #define N 5/学生总人数struct student /学生信息结构体,应该独立于main()定义 char name10;char NO15;char EN5;/为了我能看到输入的结果,所以这用字符数组存放成绩,精度为5 /*float math; float computer; float avg; union remark/老师测评 char remark15;/优、良、中、差 float m;/百分制 remark;*/受代码长度限制在这只举以上三个数据为例;struct stud

2、ent stuN;/结构体数组void in_i(int i)FILE * fp4;if(fp4 = fopen(i.txt, wb)= NULL)printf(error on creat i.txtn);exit(1);fwrite(&i, sizeof(int), 1, fp4);fclose(fp4);int out_i(void)int i;FILE * fp5;if(fp5 = fopen(i.txt,rb)= NULL)printf(n数据库为空,快来丰富它吧!n);i = 0;return i;fread(&i, sizeof(int), 1, fp5);fclose(fp5)

3、;return i;bool judge_name(struct student * t, int i)int j;struct student data1N;FILE * fppp1;if(fppp1 = fopen(student.txt, rb) = NULL)printf(error!n);exit(1);rewind(fppp1);for(j = 0; jname) = 0)printf(sorry, the name has been logined!n);fclose(fppp1);return true;fclose(fppp1);if(j = i)return false;b

4、ool judge_NO(struct student * q, int i)int j;struct student data2N;FILE * fppp2;if(fppp2 = fopen(student.txt, rb) = NULL)printf(error on open!n); rewind(fppp2);for(j = 0; jNO) = 0)printf(sorry, the NO has been logined!n);fclose(fppp2);return true;fclose(fppp2);if(j = i)return false;bool judge_EN(str

5、uct student * z, int i)/这段是自讨苦吃,没办法嘿嘿int s;if(strlen(z+i)-EN)5)printf(超过精度表示范围,会丢失数据哦!n); return false;elsefor(s = 0; sEN); s+)if(!(0ENs&(z+i)-ENs ENs = .)printf(输入非法,请重新输入!n);return true;else if(z+i)-EN01&(z+i)-EN3 =.|(z+i)-EN4 = .)printf(输入非法,请重新输入!n);return true;else if(z+i)-EN0 =1&(z+i)-EN10|(z+

6、i)-EN20|(z+i)-EN30|(z+i)-EN40)printf(输入非法,请重新输入!n);return true;elsereturn false;bool input(struct student * p, int i)FILE * fp;if(fp = fopen(student.txt, ab) = NULL)printf(error on open file!n);exit(1);printf(nname: );scanf(%s, (p+i)-name); if(judge_name(p,i)return true;printf(nNO: ); scanf(%s, (p+i

7、)-NO); if (judge_NO(p,i)return true;printf(nenglish(请加小数点): );scanf(%s, (p+i)-EN);if(judge_EN(p,i)return true;/*printf(nmath: );scanf(%f, &(p+i)-math);printf(ncomputer:);scanf(%f, &(p+i)-computer);printf(%f,&(p+i)-avg);*/fwrite(p+i,sizeof(struct student),1, fp);printf(成绩输入成功!n);fclose(fp);return fal

8、se;void search_name( char * s1, int i)int j = 0;/stu的下标struct student data3N;FILE * fp2;if(fp2 = fopen(student.txt,rb) = NULL)printf(error!n);exit(1); for(j = 0; ji; j+)fread(&data3j,sizeof(struct student),1, fp2);if(strcmp(s1,data3j.name) != 0)if(j = i-1)printf(no this students information!);fclose

9、(fp2);break;else printf(%s %s %sn,data3j.name, data3j.NO, data3j.EN);break;fclose(fp2);return;void search_NO(char * no, int i)int j = 0;/stu的下标struct student data4N;FILE * fp3;if(fp3 = fopen(student.txt,rb) = NULL)printf(error!n);exit(1); for(j = 0; ji; j+)fread(&data4j,sizeof(struct student),1, fp3

10、);if(strcmp(no,data4j.NO) != 0)if(j = i-1)printf(no this students information!);fclose(fp3);break;else printf(%s %s %sn,data4j.name, data4j.NO, data4j.EN);break;fclose(fp3);return;void print(int i)int j = 0;struct student dataN;FILE * fp1;if(fp1 = fopen(student.txt, rb) = NULL)printf(file not exit!n);for(j =0; ji; j+)fread(&dataj,sizeof(struct student),1, fp1);printf(%s %s %sn,dataj.name, dataj.NO, dataj.EN);fclose(fp1);int main(void)char n;/接收操作数int j;int i = 0;char s10;/接收学生姓名char no10;/接收学生学号printf(ttt主菜单tttn);printf(t=n);printf(tt1.输入学生成绩;n);printf(tt2.按姓名查询学生成绩;n);print

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号