#include<stdio.h>#include<stdlib.h>#include<string.h>double a,b,c,d;int ns=0,nt=0,nst=0;struct std_title{ int num; int t_num; int time; int score;}st[50];struct std{ int num; char name[20]; char sex; int cla; int tel; }s[50];struct title{ int t_num; char t_name[20]; char kind; char teacher[20];}ti[50];struct score{ int num; int sc;}sc[50];int cmp(const void *a,const void *b){ return ((struct score *)a)->sc < ((struct score *)b)->sc ? 1:-1; }void Add(){ FILE *fp; fp=fopen("d:\\test.txt","w"); int t; printf("请选择您要增添的信息类别:1->毕业设计基本信息 2->学生选题基本信息 3->学生基本信息\n"); scanf("%d",&t); if(t==1) { printf("请输入您要增添的毕业设计的题目编号\n"); scanf("%d",&ti[nt].t_num); fprintf(fp,"%d",ti[nt].t_num); printf("请输入您要增添的毕业设计的题目名称\n"); scanf("%s",&ti[nt].t_name); fprintf(fp,"%s",ti[nt].t_name); getchar(); printf("请输入您要增添的毕业设计的题目类别\n"); scanf("%c",&ti[nt].kind); fprintf(fp,"%c",ti[nt].kind); printf("请输入您要增添的毕业设计的指导老师\n"); scanf("%s",&ti[nt].teacher); fprintf(fp,"%s",ti[nt++].teacher); } else if(t==2) { printf("请输入您要增添的学生选题的题目编号\n"); scanf("%d",&st[nst].t_num); fprintf(fp,"%d",st[nst].t_num); printf("请输入您要增添的学生选题的学生学号\n"); scanf("%d",&st[nst].num); fprintf(fp,"%d",st[nst].num); printf("请输入您要增添的学生选题的选题时间\n"); scanf("%d",&st[nst].time); fprintf(fp,"%d",st[nst].time); printf("请输入您要增添的学生选题的成绩\n"); scanf("%d",&st[nst].score); fprintf(fp,"%d",st[nst++].score); } else if(t==3) { printf("请输入您要增添的学生学号\n"); scanf("%d",&s[ns].num); fprintf(fp,"%d",s[ns].num); printf("请输入您要增添的学生姓名\n"); scanf("%s",&s[ns].name); fprintf(fp,"%s",s[ns].name); printf("请输入您要增添的学生性别\n"); scanf("%c",&s[ns].sex); fprintf(fp,"%c",s[ns].sex); printf("请输入您要增添的学生班级\n"); scanf("%d",&s[ns].cla); fprintf(fp,"%d",s[ns].cla); printf("请输入您要增添的学生电话\n"); scanf("%d",&s[ns].tel); fprintf(fp,"%d",s[ns++].tel); } fclose(fp); printf("信息录入完成!\n");} void Change(){ int i,t,t1,num,t_num; printf("请选择您要修改的信息类别:1->毕业设计基本信息 2->学生选题基本信息 3->学生基本信息\n"); scanf("%d",&t); if(t==1) { printf("请输入您要修改的毕业设计的题目编号\n"); scanf("%d",&t_num); for(i=0;i<nt;i++) { if(ti[i].t_num==t_num) { printf("请选择您要修改的信息类别:1->题目名称 2->题目类别 3->指导老师\n"); scanf("%d",&t1); if(t1==1) { printf("请输入修改后的毕业设计的题目名称\n"); scanf("%s",&ti[i].t_name); } else if(t1==2) { printf("请输入您要增添的毕业设计的题目类别\n"); scanf("%c",&ti[i].kind); } else { printf("请输入您要增添的毕业设计的指导老师\n"); scanf("%s",&ti[i].teacher); } } } } else if(t==2) { printf("请输入您要修改的学生选题的题目编号\n"); scanf("%d",&t_num); for(i=0;i<nst;i++) { if(st[i].t_num==t_num) { printf("请选择您要修改的信息类别:1->选题时间 2->成绩\n"); scanf("%d",t1); if(t1==1) { printf("请输入修改后的选题时间\n"); scanf("%d",&st[i].time); } else if(t1==2) { printf("请输入修改后的成绩\n"); scanf("%d",&st[i].score); } } } } else { printf("请输入您要修改的学生信息的学号\n"); scanf("%d",&num); for(i=0;i<ns;i++) { if(s[i].num==num) { printf("请选择您要修改的信息类别:1->学生姓名 2->性别 3->班级 4->电话号码\n"); scanf("%d",&t1); if(t1==1) { printf("请输入修改后的学生姓名\n"); scanf("%s",&s[i].name); } else if(t1==2) { printf("请输入修改后学生性别\n"); scanf("%c",&s[i].sex); } else if(t1==3) { printf("请输入修改后的学生班级\n"); scanf("%s",&s[i].cla); } else { printf("请输入修改后的学生号码\n"); scanf("%d",&s[i].tel); } } } } printf("信息修改完成!\n");}void Search(){ int i,j,ii=0,t,num,t_num,cla,count=0; char c[10]; printf("请输入想要查找的方式:1->学生学号 2->指导老师 3->专业班级\n"); scanf("%d",&t); if(t==1) { printf("请输入想要查找的学生学号:\n"); scanf("%d",&num); for(i=0;i<nst;i++) { if(st[i].num==num) { printf("学号为%d的学生的成绩为:%d\n",num,st[i].score); break; } } } else if(t==2) { printf("请输入想要查找的指导老师:\n"); scanf("%s",c); for(i=0;i<nt;i++) { if(strcmp(ti[i].teacher,c)==0) { t_num=ti[i].t_num; for(j=0;j<nst;j++) { if(st[j].t_num==t_num) { sc[ii].num=st[j].num; sc[ii++].sc=st[j].score; } } qsort(sc,ii,sizeof(sc[0]),cmp); printf("按成绩排序后的结果为:\n"); for(j=0;j<ii;j++) printf("学号为%d的学生的成绩为:%d\n",sc[j].num,sc[j].sc); } } } else { printf("请输入想要查找的专业班级:\n"); scanf("%d",&cla); for(i=0;i<ns;i++) { if(s[i].cla==cla) { num=s[i].num; for(j=0;j<nst;j++) { if(st[j].num==num) { sc[ii].num=st[j].num; sc[ii++].sc=st[j].score; if(st[i].score<60) count++; } } } } printf("%d班的补几个学生人数为:%d\n",cla,count); qsort(sc,ii,sizeof(sc[0]),cmp); printf("按成绩排序后的结果为:\n"); for(j=0;j<ii;j++) printf("学号为%d的学生的成绩为:%d\n",sc[j].num,sc[j].sc); }}void Delete(){ int i,j,t,t1,num,t_num; printf("请选择您要删除的信息类别:1->毕业设计基本信息 2->学生选题基本信息 3->学生基本信息\n"); scanf("%d",&t); if(t==1) { printf("请输入您要删除的毕业设计的题目编号\n"); scanf("%d",&t_num); for(i=0;i<nt;i++) { if(ti[i].t_num==t_num) { for(j=i+1;j<nt;j++) { ti[j-1].kind=ti[j].kind; ti[j-1].t_num=ti[j].t_num; strcpy(ti[j-1].teacher,ti[j].teacher); strcpy(ti[j-1].t_name,ti[j].t_name); } } } } else if(t==2) { printf("请输入您要删除的学生选题的题目编号\n"); scanf("%d",&t_num); for(i=0;i<nst;i++) { if(st[i].t_num==t_num) { for(j=i+1;j<nt;j++) { st[j-1].num=st[j].num; st[j-1].t_num=st[j].t_num; st[j-1].num=st[j].num; st[j-1].score=st[j].score; } } } } else { printf("请输入您要删除的学生学号\n"); scanf("%d",&num); for(i=0;i<ns;i++) { if(s[i].num==num) { for(j=i+1;j<nt;j++) { s[j-1].num=s[j].num; s[j-1].cla=s[j].cla; s[j-1].sex=s[j].sex; s[j-1].tel=s[j].tel; strcpy(s[j-1].name,s[j].name); } } } } printf("信息删除完成!\n"); }int main(){ int t,flag=1; printf("\n\t ******************************************************"); printf("\n $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"); printf("\n ★★★★★★★★★★★★★★★★★★★★★★★★★★★\n"); printf("\n\t 成都信息工程大学\n\n"); printf("\n\t 毕业设计管理系统欢迎您!\n\n"); printf("\n 请选择您要进入的功能 \n\n"); printf(" 1.增添信息。\n\n"); printf(" 2.修改信息。\n\n"); printf(" 3.查询信息。\n\n"); printf(" 4.删除信息。\n\n"); printf(" 5.退出系统\n\n"); printf(" 请您选择: "); printf("\n\n ★★★★★★★★★★★★★★★★★★★★★★★★★★★"); printf("\n $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"); printf("\n\t ******************************************************\n"); while(flag) { printf(" 请您选择对应功能: "); scanf("%d",&t); switch(t) { case 1:Add();break; case 2:Change();break; case 3:Search();break; case 4:Delete();break; case 5:flag=0;break; } } return 0; }
1 回答
- 1 回答
- 0 关注
- 1904 浏览
添加回答
举报
0/150
提交
取消