首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。 例如,有10
给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。 例如,有10
admin
2021-02-25
33
问题
给定程序中,函数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全国计算机二级
相关试题推荐
有以下程序(字母A的ASCII代码为65):#include<stdio.h>main(){charcl='A',c2='Y':printf("%d%d\n",c1,c2);}程序运行后的输出结果是()。
以下针对全局变量的叙述错误的是()。
以下叙述中错误的是()。
以下叙述中正确的是()。
若有定义语句:inta=3,b=2,c=l;以下选项中错误的赋值表达式是()。
在下列模式中,能够给出数据库物理存储结构与物理存取方法的是
设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)
软件测试的目的是
设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为()。
公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是()。
随机试题
近代以来,中国人民面对的历史任务是
使多样性维持高水平的措施是()
A、氢氧化铝-镁乳合剂B、雷尼替丁C、次枸橼酸D、奥美拉唑(洛赛克)E、硫糖铝进餐时与食物同服()
指出下列牙齿演化的论述中哪一个是错误的()
急性肾小球肾炎患儿恢复正常活动的标准
某工程在浇筑门厅(结构高度为28.1m,净跨24m)混凝土时,发生支模架坍塌,造成13人死亡,17人受伤。经调查,该事故主要是由于现场技术管理人员生病请假,工程负责人为了不影响施工进度,未经技术交底就吩咐工人自行作业造成的。则该工程质量事故应判定为(
运用市场途径时选择3个及3个以上参照物的目的是()。
目前,我国物业管理法律规范的表现形式主要有()等。
根据以下资料,回答下列问题。根据图1,2007年以来,我国国内生产总值达到最大值的季度是哪个?()
PartⅡReadingComprehension(SkimmingandScanning)Directions:Inthispart,youwillhave15minutestogooverthepassageq
最新回复
(
0
)