学生成绩管理系统v模板_第1页
学生成绩管理系统v模板_第2页
学生成绩管理系统v模板_第3页
学生成绩管理系统v模板_第4页
学生成绩管理系统v模板_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

//成绩管理系统vl.O//能动1302王清栋include<stdio.h>include<stdlib.h>#defineN30defineM6voidInput(1ongnum[],intscore[][M]Jntn,intm);voidTotalave(intscore[][M],intn,intm);voidevestuTotalave(intscore[][M],intnjntmjongnum[]);voidScoredes(1ongnum[],intscore[][M],intn,intm);voidScoreas(Iongnum。,intscoreintn,intm);voidNumas(longnum[]Jntscore[][M],intnjntm);voidSearch(Iongnum[],intscore[][M],intnjntx,intm);voidstatistis(Iongnum[],intscore[][M],intn,intm);voidList(longnum[],intscore[][M],intn,intm);intmain()(intn,score[n][M],c,xzm;Iongnum[N];printf("输入学生人数”);scanf("%d",&n);printf("输入考试科目”);scanf("%d",&m);printf("1.Inputrecord\n");printf("2.Caculatetotelandaveragescoreofeverycourse\n");inthigh=n-1,low=0,mid;c=l,pos,o,find=0,i,h,sum[N]J;for(i=0;i<n;i++)(sum[i]=0;for(j=O;j<m;j++)(sum[i]=sum[i]+score))for(i=0;i<n;i++)(k=i;for(j=i+1;j<n;j++)(if(num[j]<num[k])k寸)if(i!=k)(h=num[k],o=sum[k];num[k]=num[i],sum[k]=sum[i];num[i]=h,sum[i]=o;t[l]=score[k][l];score[k][l]=score[i][l];

score[i][l]=t[l];)))while(find==O&&1ow<=high)(mid=(high+low)/2;if(x>num[mid])low=mid+l;elseif(x<num[mid])high=mid-1;else(pos=mid;find=l;))ifffind==0)printf("notfind\n");elseif(sum[i]>sum[pos])C++;)printf("ID:%10Id\n",num[pos]);〃以长整形打印用%ldfor(j=0;j<m;j++)printf("project%dscore:%d\n",j+1,score[pos][j]);printf("aIIscore:%d,order:%d\n",sum[pos],c);))voidstatistis(1ongnum[],intscoreintn,intm)//8.(inta=0,b=0,c=0,d=0,e=0,i,j;doubleA,B,C,D,E;for(j=0;j<m;j++)(for(i=0;i<n;i++)(if(score[i][j]>=90)a++;elseif(score[i][j]>=80)b++;elseif(score[i][j]>=70)c++;elseif(score[i][j]>=60)d++;elsee++;)A=(double)a/n*100:B=(double)b/n*100;C=(double)c/n*100:D=(double)d/n*100;E=(doub1e)e/n*100;printf("project%d\n",j+l);Printf("优秀人数%d,比例:%f%%\n",a,A);printf("良好人数%d,比例:%f%%\n",b,B);printf("中档人数%d,比例:%f%%\n”,c,C);P门ntf("及格人数%d,比例:%f%%\n”,d,D);printf("不及格人数%<1,比例:%f%%\n”,e,E);))voidList(longnum口,intscore[][M],intn,intm)(inti,jfsum[N];doubleave[N];for(i=0;i<n;i++)(sum[i]=0;for(j=0;j<m;j++)sum[i]=sum[i]+scoreave[i]=(doubIe)sum[i]/m;for(i=0;i<n;i++)printf("ID:%101d\n",num[i]);for(j=0;j<m;j++)(printf('*score:%d\n",score[i][j]);)printf("总分=%d\n平均分%f\nave[i]);printf("3.Caculatetotelandaveragescoreofeverystudent\n");printf("4.Sortindescendingorderbytotalscoreofeverystudent\n");printf("5.Sortinascendingorderbytotaiscoreofeverystudent\n");printf("6.Sortinascendingorderbynumber\n");printf("7.Searchbynumber\n");printf("8.Statisticanalysisforeverycourse\n");printf("9.Listrecord\n");printf("O.Exit\n");printf("PIeaseenteryourchoice:\n");printf("\n"for(;;)(scanf("%d",&c);switch(c)(case1:〃录入学生学号和各科成绩Input(num,score,n,m);printf('*Pleaseenteryourchoice:\n");break;case2:〃计算每门课程的总分和平均分Totaiave(score,n,m);printf("P1easeenteryourchoice:\n");break;

case3:〃计算每个学生的总分和平均分case3:〃计算每个学生的总分和平均分break;case4:〃按每个学生口勺总分由高到低排出名次表Scoredes(num,scoreznzm);printf("PIeaseenteryourchoice:\n");break;//按每个学生的总分由低到高排出名次表Scoreas(num,scorprintf(nP1easeenteryourchoice:\n");break;〃按学号由小到大排出名次表Numas(num,score,n,m);printf("Pleaseenteryourchoice:\n");break;case7:〃按学号查询学生排名及其各科成绩pri111仙”请输入查找学号\11");scanf("%d",&x);Search(num,score,n,x,m);printf('*Pleaseenteryourchoice:\nn);break;case8:〃成绩分析所占比例statistis(num,scorezn,m);printf("PIeaseenteryourchoice:\n");break;case9://所有输出List(num,score,n,m);TotaIave(score,n,m);printf("PIeaseenteryourchoice:\n");break;case0:exit(0);})return0;)voidInput(Iongnum[]zintscore[][M]Jntn,intm)//I(inti,j;for(i=0;i<n;i++)(printff'lnputstudent'sIDandscore");seanf("%ld",&num[i]);for(j=O;j<m;j++)seanf("%d"^score[i][j]);//2//2.计算每门课程的总分和平:均分//2.计算每门课程的总分和平:均分//2.计算每门课程的总分和平:均分intizj,sumLM];doubleave[M];for(j=0;j<m;j++)(sum[j]=0;for(i=0;i<n;i++)(sum[j]=sum[j]+score[i][j];)ave[j]=(double)sum[j]/n;)for(i=0;i<m;i++)printf("科目%(1的总分=%d,课程的J平均分=%f\rT,i+1,sum[i],ave[i]);)voidevestuTotalave(intscore[][M],intnjntm,longnum[])//3.计算每个学生的总分和平均分(intij,sum[N];doubleave[N];for(i=0;i<n;i++)(sum[i]=0;for(j=0;j<m;j++)sum[i]=sum[i]+score[i][j];)ave[i]=(double)sum[i]/m;)for(i=0;i<n;i++)printf("学号为%1d的总分=%d,其平均分=%八n",num[i],sum[i],ave[i]);)voidScoredes(longnum[],intscore[][M],intn,intm)//4.按每个学生的总分由高到低排出名次表(int\,j,k,t,h,sum[N];for(i=0;i<n;i++)(sum[i]=0;for(j=0;j<m;j++)(sum[i]=sum[i]+score[i][j];))for(i=0;i<n;i++)(k=i;for(j=i+1;j<n;j++)(if(sum[j]>sum[k])k=j;if(i!=k){t=sum[k],h=num[k];sum[止sum[i],num[k]=num[i];sum[i]=t,num[i]=h;))for(i=0;i<n;i++)printf("ID:%1Old,score:%d\n"znum[i],sum[i]);//以长整形打印用%1d)voidScoreas(longnum[],intscore[][m],intn,intm)//5.按每个学生的总分由di到gao排出名次表{inti,j,k,t,h,sum[N];for(i=0;i<n;i++)(sum[i]=0;for(j=0;j<m;j++){sum[i]=sum[i]+score[i][j];)for(i=0;i<n;i++)k=i;for(j=i+1;j<n;j++)if(sum[j]<sum[k])k=j;)if(i!=k)(t=sum[k],h=num[k];sum[k]=sum[i],num[k]=nsum[i]=t,num[

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论