使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。函数fun根据所给n名学生的成绩,计算出所有学生的平均成绩,把高于平均成绩的学生成绩求平均值并返回。 例如,若有成绩为:50,60,

admin2017-07-13  24

问题 使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。函数fun根据所给n名学生的成绩,计算出所有学生的平均成绩,把高于平均成绩的学生成绩求平均值并返回。
    例如,若有成绩为:50,60,70,80,90,100,55,65,75,85,95,99,则运行结果应为:91.5
    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
    注意:源程序存放在文件BLANK1.C中,不得增行或删行,也不得更改程序的结构!
    #include<stdio.h>
    #pragma warning(disable:4996)
    double fun(double x[],int n)
    {  int i,k=0;
    double avg=0.0,sum=0.0;
    for(i=0;i<n;i++)
    avg+=x
    /**********found**********/
    avg/= __【1】__;
    for(i=0;i<n;i++)
    if(x>avg)
    {
    /**********found**********/
    __【2】___+=x
    k++:
    }
    /**********found**********/
    return __【3】__;
    main()
    {double score[12]={50,60,70,80,90,100,55,65,75,85,95,99};
    double aa;
    aa=fun(score,12);
    printf(’’%d\n’’,aa);
    }

选项

答案(1)n (2)sum (3)sum/k

解析 填空1:fun()函数有两个参数,第一个为数组x,第二个为数组元素个数n,首先利用第一个for循环将传入的所有数组元素加起来存入变量avg中,因为求的是平均值,所以需要除以元素个数,所以该空填数组元素个数n。答案为n。
    填空2:第二个for循环将数组中每个元素值与平均成绩进行比较,把高于平均值的元素值加起来以便后期求其平均,此时需要一个变量用来存放高于平均成绩的元素总和,所以该空填sum。答案为sum。
    填空3:变量k的作用为统计高于平均成绩的元素个数,因为题目要求把高于平均成绩的学生成绩求平均值并返回,所以用高于平均成绩的分数总数除以元素个数,所以该空填sum/k。答案为sum/k。
转载请注明原文地址:https://kaotiyun.com/show/fODp777K
0

最新回复(0)