计算机二级编程填空题

时间:2015.08.06 发布人:果果_莹

计算机二级编程填空题

已解决问题

谷歌果果_莹用户在2015.08.06提交了关于“美国新冠肺炎计算机二级编程填空题”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-02-25T09:32:19。

第60套:

给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定

所有数均为正数),将所指数组中小于平均值的**移至数组的前部,大于等于平

均值的**移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均

值和移动后的**。

例如,有10个正数:4630324061745154826,平均值为:

30.500000

移动后的输出为:3061715264632404548

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

#include<stdlib.h>

#include<stdio.h>

#defineN10

doublefun(double*x)

{inti,j;double**,y[N];

**=0;

/**********found**********/

for(i=0;i<N;i++)**+=x[i]/N;

for(i=j=0;i<N;i++)

if(x[i]<**){

/**********found**********/

y[j]=x[i];x[i]=-1;j++;}

i=0;

while(i<N)

{if(x[i]!=-1)y[j++]=x[i];

/**********found**********/

i++;

}

for(i=0;i<N;i++)x[i]=y[i];

return**;

}

main()

{inti;doublex[N];

for(i=0;i<N;i++){x[i]=rand()%50;printf("%4.0f",x[i]);}

printf("\n");

printf("\nThe**erageis:%f\n",fun(x));

printf("\nTheresult:\n",fun(x));

for(i=0;i<N;i++)printf("%5.0f",x[i]);

printf("\n");

}

其中x[i]=-1

什么意思呢

希望大家能够帮助她。

详细问题描述及疑问:

第60套:

给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定

所有数均为正数),将所指数组中小于平均值的**移至数组的前部,大于等于平

均值的**移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均

值和移动后的**。

例如,有10个正数:4630324061745154826,平均值为:

30.500000

移动后的输出为:3061715264632404548

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

#include<stdlib.h>

#include<stdio.h>

#defineN10

doublefun(double*x)

{inti,j;double**,y[N];

**=0;

/**********found**********/

for(i=0;i<N;i++)**+=x[i]/N;

for(i=j=0;i<N;i++)

if(x[i]<**){

/**********found**********/

y[j]=x[i];x[i]=-1;j++;}

i=0;

while(i<N)

{if(x[i]!=-1)y[j++]=x[i];

/**********found**********/

i++;

}

for(i=0;i<N;i++)x[i]=y[i];

return**;

}

main()

{inti;doublex[N];

for(i=0;i<N;i++){x[i]=rand()%50;printf("%4.0f",x[i]);}

printf("\n");

printf("\nThe**erageis:%f\n",fun(x));

printf("\nTheresult:\n",fun(x));

for(i=0;i<N;i++)printf("%5.0f",x[i]);

printf("\n");

}

其中x[i]=-1

什么意思呢

期待您的答案,真心佩服你,谢谢 !
希望以下的回答,能够帮助你。

第1个回答

用户名:xieb5  

1.x[i]=-1的意思是用来标示已经移动的值(比平均值小的值),已经移动了值,对后面的计算没用用处,至-1,方便后续找平均值大的值

2.if(x[i]!=-风跟题1)根据这个判断就能找到比平均值大的值

main函数中的fun(x)没必要调用2次吧