发布网友 发布时间:2022-05-25 14:53
共1个回答
热心网友 时间:2023-11-06 01:49
看可以不咯? #include<stdio.h> int avgGrade(int a[50]) { int i,sum=0,max=0,min=0; double avg=0.0; max=a[0]; min=a[0]; for(i=0;i<50;i++) { sum+=a[i]; if(a[i]>max) max=a[i]; if(a[i]<min) min=a[i]; } avg=(double)sum/50; printf("平均成绩为%lf,最高成绩为%d,最低成绩为%d\n",avg,max,min); return 0; } int compositor(int a[50]) { int i,j,n,temp=0; printf("请输入您要排序的方式(0:升序,1:降序):\n"); scanf("%d",&n); for(i=0;i<50;i++) { for(j=0;j<i;j++) { if(n==0) { if(a[j]>a[i]) { temp=a[i]; a[i]=a[j]; a[j]=temp; } } else { if(a[j]<a[i]) { temp=a[i]; a[i]=a[j]; a[j]=temp; } } } } for(i=0;i<50;i++) { printf("%d",a[i]); } } int insertGrade(int a[50]) { int i,n; printf("请输入你要插入的成绩:\n"); scanf("%d",&n); for(i=0;i<50;i++) if(n>a[i]) { for(s=49;s>=i;s--) a[s+1]=a[s]; break; } a[i]=n; } int deleteGrade(int a[50]) { int x,i,j; printf("请输入你要删除的成绩:\n"); scanf("%d",&x); for(i=0;i<10;i++) { if(a[i]==x) for(j=i+1;j<10;j++) a[i]=a[j]; a[j]='\0'; } } void main() { int n,i,a[50]; printf("请输入50个学生的成绩:\n"); for(i=0;i<50;i++) { scanf("%d",&a[i]); } while(1) { printf ("--------------------------\n"); printf ("请选择您的功能:\n\n"); printf (" 0 录入成绩\n"); printf (" 1 输出成绩\n"); printf (" 2 输出平均分、最高分、最低分\n"); printf (" 3 成绩降序或升序排列\n"); printf (" 4 插入一个成绩\n"); printf (" 5 删除用户给定的成绩\n"); printf (" 6 退出\n\n"); printf ("--------------------------\n"); scanf("%d",n); switch(n) { case 0: printf("请输入50个学生的成绩:\n"); for(i=0;i<50;i++) { scanf("%d",&a[i]); } break; case 1: for(i=0;i<50;i++) { printf("%d",a[i]); } break; case 2: avgGrade(a); break; case 3: compositor(a); break; case 4: insertGrade(a); break; case 5: deleteGrade(a); break; case 6: exit (0); } } return 0; }追问谢了忙烦您用邮件把那文档给我呗 谢谢大神啊