收藏 分销(赏)

学生信息管理系统c语言版源代码样本.doc

上传人:二*** 文档编号:4515197 上传时间:2024-09-26 格式:DOC 页数:32 大小:38.52KB
下载 相关 举报
学生信息管理系统c语言版源代码样本.doc_第1页
第1页 / 共32页
本文档共32页,全文阅读请下载到手机保存,查看更方便
资源描述
#include <stdio.h> #include <string.h> #include <stdlib.h> #include <conio.h> #define N 1000 typedef struct student { int number; char name[20]; int grade; int gaoshu; int yingyu; int jisuanji; int sum; }STUDENT; STUDENT student[N]; int shuliang=0; void menu(); void fhzjm() { char biaozhi[20]; printf("\n"); printf("还需要操作么?如果需要操作请输入:yes,否则请输入:no\n"); scanf("%s",biaozhi); if(strcmp(biaozhi,"yes")==0) { menu(); } else if(strcmp(biaozhi,"no")==0) exit(0); else { printf("请输入对的字符,谢谢!\n"); fhzjm(); } } void DengJi() { int rs; int i,k=1; system("CLS"); printf("请输入需要输入几种学生信息:"); scanf("%d",&rs); for(i=shuliang;i<shuliang+rs;i++,k++) { printf("请输入第%d个学生学号:",k); scanf("%d",&student[i].number); printf("请输入学生姓名:"); scanf("%s",student[i].name); printf("请输入学生3门课成绩:"); printf("请输入第1门课成绩:"); scanf("%d",&student[i].gaoshu); printf("请输入第2门课成绩:"); scanf("%d",&student[i].yingyu); printf("请输入第3门课成绩:"); scanf("%d",&student[i].jisuanji); } shuliang=shuliang+rs; fhzjm(); } void ShanChu() { char shanchuinfo[10]; system("CLS"); printf("删除所有学生信息请输入\"all\",删除指定学号学生信息请输入\"one\"\n"); scanf("%s",shanchuinfo); if(strcmp(shanchuinfo,"all")==0) { int j; printf("你删除学生信息如下:\n"); printf("-----------学号-------------姓名-------------高数--------------英语--------------计算机\t\n"); for(j=0;j<shuliang;j++) printf("----%d-------%s-------%d-------%d-------%d\t\n",student[j].number,student[j].name,student[j].gaoshu,student[j].jisuanji); shuliang=0; printf("删除成功\n\n"); } else if(strcmp(shanchuinfo,"one")==0) { struct student *p=NULL; int choice; int i,j,k=0; printf("请输入你要删除人学号:"); scanf("%d",&choice); for(i=0;i<shuliang;i++) { if(choice==student[i].number) { k=1;j=i;break; } } if(k) { if(shuliang==1) { p=&student[0]; free(p); shuliang=0; } else { for(i=j;i<shuliang;i++) { student[i]=student[i+1]; } shuliang=shuliang-1; } printf("删除成功\n\n"); } else { printf("输入数据错误!\n"); } } fhzjm(); } void LiuLan() { int i; system("CLS"); if(shuliang==0) { printf("系统里面没有任何学生信息!\n"); } else { for(i=0;i<shuliang;i++) { printf("第%d个学生学号为:%d\n",i+1,student[i].number); printf("第%d个学生姓名为:%s\n",i+1,student[i].name); printf("第%d个学生第一门课成绩为:%d\n",i+1,student[i].gaoshu); printf("第%d个学生第二门课成绩为:%d\n",i+1,student[i].yingyu); printf("第%d个学生第三门课成绩为:%d\n",i+1,student[i].jisuanji); student[i].sum=student[i].gaoshu+student[i].yingyu+student[i].jisuanji; printf("第%d个学生总成绩为:%d\n",i+1,student[i].sum); } } fhzjm(); } void ChaZhao() { int xx; char choice,yy[20]; int i,j,k=0; system("CLS"); if(shuliang==0) { printf("系统里面没有任何学生信息!\n"); fhzjm(); } printf("三种查找方式:学号,姓名,成绩\n"); printf("如果按学号查找请输1,如果按姓名查找请输2,如果按成绩查找请输3\n"); printf("请输入您查找方式:"); scanf("%s",&choice); if(choice=='1') { printf("请输入需要查找学生学号:"); scanf("%d",&xx); printf("您所查找学生信息为:\n"); printf("----学号----姓名----高数成绩----英语成绩----计算机成绩----\t\n"); for(i=0;i<shuliang;i++) { if(xx==student[i].number) { j=i;k=1; printf("----%d-------%s-------%d-------%d-------%d----\t\n",student[j].number,student[j].name,student[j].gaoshu,student[j].yingyu,student[i].jisuanji); } } if(k==0) printf("输入信息有误:\n"); } else if(choice=='2') { printf("请输入需要查找学生姓名:\n"); scanf("%s",yy); printf("您所查找学生信息为:\n"); printf("----学号----姓名----高数成绩----英语成绩----计算机成绩----\t\n"); for(i=0;i<shuliang;i++) { if(strcmp(yy,student[i].name)==0) { j=i;k=1; printf("----%d-------%s-------%d-------%d-------%d----\t\n",student[j].number,student[j].name,student[j].gaoshu,student[j].yingyu,student[j].jisuanji); } } if(k==0) printf("输入信息有误:\n"); } else if(choice=='3') { printf("请输入需要查找学生成绩:\n"); scanf("%d",&xx); printf("您所查找学生信息为:\n"); printf("----学号----姓名----高数----英语----计算机----\t\n"); for(i=0;i<shuliang;i++) { if(xx==student[i].grade) { j=i;k=1; printf("----%d-------%s-------%d-------%d-------%d----\t\n",student[j].number,student[j].name,student[j].gaoshu,student[j].yingyu,student[i].jisuanji); } } if(k==0) printf("输入信息有误:\n"); } fhzjm(); } void PaiXu() { struct student *p1[N],**p2,*temp; int i,j; system("CLS"); p2=p1; for( i=0;i<shuliang;i++) { p1[i]=student+i; } for( i=0;i<shuliang;i++) { for( j=i+1;j<shuliang;j++) { if((*(p2+i))->sum<(*(p2+j))->sum) {temp=*(p2+i);*(p2+i)=*(p2+j);*(p2+j)=temp;} } } printf("按照总成绩排序之后信息为:\n"); printf("----学号----姓名----总成绩----\t\n"); for( i=0;i<shuliang;i++) { student[i].sum=student[i].gaoshu+student[i].yingyu+student[i].jisuanji; printf("----%d-----%s----%d-----\n",(*(p2+i))->number,(*(p2+i))->name,(*(p2+i))->sum); } fhzjm(); } void CunChu() { int i; FILE *rs; if((rs=fopen("student.txt","w"))==NULL) { printf("not open"); exit(0); } for(i=0;i<shuliang;i++) { fwrite(&student[i],sizeof(student[i]),1,rs); } if(ferror(rs)) { fclose(rs); perror("写文献失败!\n"); return; } printf("存储文献成功!\n"); fclose(rs); fhzjm(); } void DaoChu() { struct student t; int i=0; FILE* fp = fopen("student.txt","r"); shuliang=0; if(NULL==fp) { perror("读取文献打开失败!\n"); return; } memset(student,0x0,sizeof(student)); while(1) { fread(&t,sizeof(t),1,fp); if(ferror(fp)) { fclose(fp); perror("读文献过程失败!\n"); return; } if(feof(fp)) { break; } student[i]=t; i++; } fclose(fp); shuliang=i; printf("导出文献成功!\n"); fhzjm(); } void menu() { int n=0; system("CLS"); printf(" 学生信息管理系统\n"); printf(" 作者:陈椿\n"); printf("-------------------MENU-----------------\n"); printf(" 1.登记学生信息\n"); printf(" 2.删除学生信息\n"); printf(" 3.浏览所有已经登记学生\n"); printf(" 4.查找\n"); printf(" 4.1按学号查找\n"); printf(" 4.2按姓名查找\n"); printf(" 4.3按成绩查找\n"); printf(" 5.依照总成绩排序\n"); printf(" 6.存储到文献\n"); printf(" 7.从文献导出\n"); printf(" 8.退出系统\n"); a: printf(" 请选取:"); scanf("%d",&n); switch (n) { case 1: DengJi();break; case 2: ShanChu();break; case 3: LiuLan();break; case 4: ChaZhao();break; case 5: PaiXu();break; case 6: CunChu();break; case 7: DaoChu();break; case 8: exit(0);break; default: { printf("请输入1-8之间数字,谢谢!\n"); goto a; } } } main() { menu(); }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服