首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。 例如,有10
给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。 例如,有10
admin
2021-02-25
51
问题
给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。
例如,有10个正数:46 30 32 40 6 17 45 15 48 26,平均值为:30.500000
移动后的输出为:30 6 17 15 26 46 32 40 45 48
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
1 #include<stdlib.h>
2 #include<stdio.h>
3 #define N 10
4 double fun(double *x)
5 { int i,j;double av,y[N];
6 av=0;
7 /**********found**********/
8 for(i=0;i<N; i++) av+=__1__;
9 for(i=j=0; i<N;i++)
10 if(x
<av){
11 /**********found**********/
12 y[j]=x
;x
=-1;_2__;}
13 i=0;
14 while(i<N)
15 { if(x
!=-1)y[j++]=x
;
16 /**********found**********/
17 __3__;
18 }
19 for(i=0;i<N;i++)x
=y
;
20 return av;
21 }
22 main()
23 { int i;double x[N];
24 for(i=0;i<N;i++){x
=rand()%50;printf(’’%4.of’’,x
);}
25 printf(’’\n’’);
26 printf(’’\nThe average is:%f\n’’,fun(x));
27 printf(’’\nThe result:\n’’,fun(x));
28 for(i=0 ; i<N;i++) printf(’’%5.of’’,x
);
29 printf(’’\n’’);}
选项
答案
(1)x[i]/N (2)j++或j=j+1 (3)i++或i=i+1
解析
第一空:“for(i=0;i<N;i++)av+=__1__;”在该循环的下一个循环内是逐个比较元素x
是否小于av,即该循环的功能是求出平均值。由“av=(x[0]+x[1]+…x[N-1])/N=x[0]/N+x[1]/N+…+x[N-1]/N”可知,第一空处应为“x
/N”。
第二空:“if(x
<av){y[j]=x
;x
=-1;__2__;”如果x
小于平均值则将x
存储在y数组中,变量i是循环变量,变量j记录数组y的下标变化,下一次执行if内部语句时,y数组的下标应为下一个位置,故第二空处应为j加1,即第二空出为“j++”或“j=j+1”。
第三空:i为while循环的循环变量,第一次进入while的时候i为0,判断第一个元素x[0]是否是-1,第二次进入的时候判断第二个元素x[1]是否是-1,依此类推直到i=N退出循环,故第三处是变量i自增,即第三空处为“i++”或“i=i+1”。
转载请注明原文地址:https://kaotiyun.com/show/Dntp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设有定义:struct{intn;floatx;)s[2],m[2]={{10,2.8},{0,0.0});则以下赋值语句中正确的是()。
有以下程序:#include<stdio.h>intml(intx,inty){returnx<=y?x:y;}intm2(intx,inly){returnx<=y?y:x;}intfun(inta,intb){re
有以下程序:#include<stdio.h>main(){inti,J;forti=1;i<4;i++){fortj=i;j<4;j++)printf("%d*%d=%d",i,j,i*j);printf("\n");
没有定义:inta,b;floatx,y;,则以下选项中对语句所做的注释叙述错误的是()。
定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。
软件测试的目的是
若要定义一个具有5个元素的整型数组,以下错误的定义语句是
若变量已正确定义,有以下程序段i=0;doprintf("%d,",i);while(i++);printf("%d\n",i);其输出结果是
在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为
下列不属于软件工程3个要素的是()。
随机试题
同种原子的核电荷数是相同的。
如图所示,某窗间墙长1500mm,墙厚为370mm;中部支承钢筋混凝土梁的截面尺寸hc×b=550mm×250mm,梁端实际支承长度为240mm,上层墙体传来轴向力设计值Nu=150kN,梁端支承反力设计值N1=100kN。
下列选项中,不属于生产经营单位的主要负责人对本单位安全工作负有的责任的是()。生产经营单位的主要负责人和安全生产管理人员必须具备()。
下列各项成本中,不属于批次级作业成本库的是()。
左图为给定的立体,从任意角度剖开,右边哪一项不可能是它的截面图?
张三在2011年7月1日购买了东兴公司以平价发行面值为1000元的可转换债券,在2016年7月1日到期前的任何时间内,可将每张债券转换为20股普通股票,因此,其转换比率为20,则转换价格为()。
下列关于中国刑法适用范围的说法,哪个是正确的?()
BSP方法的特点是,规划将信息结构独立于企业的
Formattingforresults.a)theuseofunderlines,italics,bold,andallcapsb)【1】iskeytomaketheinformationontheresume
A、Abuspassenger.B、Acabinpassenger.C、Abusconductor.D、Atrainpassenger.A乘客不清楚何时下车或下船的事虽时有发生,但从所到的站名来看,男士很可能是公共汽车上的乘客。
最新回复
(
0
)