第十四周 实践项目<2> ---成绩处理函数版

来源:互联网 发布:编程珠玑 动态规划 编辑:程序博客网 时间:2024/06/05 11:32


Copyright (c) 2016,
烟台大学计算机与控制学院 All ringts reserved.
 文件名称:实践项目<2> ---成绩处理函数版
作 者:王兴振
完成日期:2016年12月06日
版 本 号:未知
题目描述:

答       案:

#include<stdio.h>
#include<math.h>
void m(int n,int ab[],int max);
int main()
{
 int n,a[100],p=0,max=0,min=100,i;
 int as=0,az=0;
 float c,s,w=0;
 printf("你们班有多少名同学:");
 scanf("%d", &n);
 printf("请输入成绩:\n");
 for(i=0;i<n;i++)
 {
  printf("第%d个:", i+1);
     scanf("%d", &a[i]);
     if(a[i]>100)
     i--;
 }
 for(i=0;i<n;i++)
 {
  if(a[i]>max)
  max=a[i];
  if(a[i]<min)
  min=a[i];
  p+=a[i];
 }
 printf("最高为:%d \n最低为:%d\n平均值:%d\n", max,min,p/n);
 for(i=0;i<n;i++)
    {
        if(a[i]==max)
            as++;
        if(a[i]==min)
            az++;
    }
 printf("最高有 %d 人,他们是 ", as);
 m(n,a,max);
 printf("号\n");
 printf("最低有 %d 人,他们是 ", az);
 m(n,a,min);
 printf("号\n");
 for(i=0;i<n;i++)
 {
  c=a[i]-(float)p/(float)n;
  if(c<0)
            c=-c;
  w=w+c*c;
 }
 s=sqrt(w/(float)(n-1
                  ));
 printf("标准偏差:%.4f", s);
 return 0;
}
void m(int n,int ab[],int max)
{
    int i;
    for(i=0;i<n;i++)
    {
        if(ab[i]==max)
           printf("%d ", i+1);
    }
}


0 0