首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中,fun函数的功能是:在任意给定的N个正整数中,从左到右依次逐个取三个数作为一组,按值大小找出该组数的中值,用该中值替换与该组数对应的原三个数中的中间位置的数。处理后原数列中首尾2个数不变。处理后数列在主函数中输出。例如,有10个正
给定程序MODI1.C中,fun函数的功能是:在任意给定的N个正整数中,从左到右依次逐个取三个数作为一组,按值大小找出该组数的中值,用该中值替换与该组数对应的原三个数中的中间位置的数。处理后原数列中首尾2个数不变。处理后数列在主函数中输出。例如,有10个正
admin
2016-12-06
59
问题
给定程序MODI1.C中,fun函数的功能是:在任意给定的N个正整数中,从左到右依次逐个取三个数作为一组,按值大小找出该组数的中值,用该中值替换与该组数对应的原三个数中的中间位置的数。处理后原数列中首尾2个数不变。处理后数列在主函数中输出。例如,有10个正整数如下:
初始数列为:6 5 7 23 18 5 8 21 45 38
第1组数为:6 5 7 中值为:6替换后的数列为:
6 6 7
23 18 5 8 21 45 38
第2组数为:5 7 23 中值为:7替换后的数列为:6
6 7 23
18 5 8 21 45 38
第3组数为:7 23 18中值为:18替换后的数列为:6 6
7 18 18
5 8 21 45 38
第4组数为:23 18 5中值为:18替换后的数列为:6 6 7
18 18 5
8 21 45 38
第5组数为:18 5 8 中值为:8替换后的数列为:6 6 7
18 8 8
21 45 38
第6组数为:5 8 21 中值为:8替换后的数列为:6 6 7 18 18
8 8 21
45 38
第7组数为:8 21 45 中值为:21替换后的数列为:6 6 7 18 18
8 21 45
38
第8组数为:21 45 38 中值为:38替换后的数列为:6 6 7 18 18 8 8
21 38 38
最终结果为:6 6 7 18 18 8 8 21 38 38
请改正程序中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include <stdio.h>
2 #define N 10
3 int findmid(int a,int b,int c)
4 {int t;
5 t=(a>b)? (b> c? b:(a> c? c:a)):((a>c)?a:((b>c)?c:b));
6 /*********found*********/
7 return b;
8 }
9 void fun(int x[])
10 {int i,a,b,c,t[N];
11 /*********found*********/
12 for(i=0;i<N;i++)t
=x
13 for (i=0;i<N-2;i++)
14 {a=t
;b=t[i+1];c=t[i+2];
15 /*********found*********/
16 t[i+1]=findmid(a,b,c);
17 }
18 }
19 main ()
20 {int i,x[N]={6,5,7,23,18,5,8,21,45,38};
21 for(i=0 ; i<N;i++)
22 printf(’’%d’’,x
);
23 printf(’’\n’’);
24 fun(x);
25 for(i=0;i<N ; i++)
26 printf(’’%d’’,x
);
27 printf(’’\n’’);
28 }
选项
答案
(1)return t; (2)for(i=0;i
解析
(1)函数findmid的功能是找到a、b、c三个数中的中间数,并存放在变量t中,因此应返回t。
(2)语法错误,句末缺少分号。
(3)本程序是对数组x进行操作,数组t只是用来暂时存放数组x中的元素,因此此处应为x[i+1]=findmid(a,b,c)。
转载请注明原文地址:https://www.kaotiyun.com/show/ENDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:intf1(intx,inty){returnx>y?x:y;}intf2(intx,inty){returnx>y?y:x;}main(){inta=4,b=
有以下程序段:main(){inta=5,*b,**c;c=&b;b=&a;}程序在执行了c=&b;b=&a;语句后,表达式**c的值是______。
以下程序的功能是进行位运算:main(){unsignedchara,b;a=7^3;b=~4&3;printf("%d%d\n",a,b);}程序运行后的输出结果是______。
有以下程序:main(){inti=1,j=1,k=2;if((j++‖k++)&&i++)printf("%d,%d,%d\n",i,j,k);}执行后的输出结果是______。
有以下定义语句:doublea,b;intw;longc;若各变量已正确赋值,则下列选项中正确的表达式是______。
函数fun的功能是计算xn:doublefun(doublex,intn){inti;doubley=1;for(i;=1;i<=n;i++)y=y*x;returny;}主函数中已
以下程序的输出结果是______。#defineSQR(X)X*Xmain(){inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("d\n",a);}
有以下程序main()}inti,s=1;for(i=1;i<50;i++)if(!(i%5)&&!(i%3))s+=i;printf("%d/n",s);}程序的输出结果是
软件测试是保证软件质量的重要手段,而软件测试的主要和重要的测试方法是通过测试数据和【】的设计来实现。
有以下函数:fun(char*a,char*b){while((*a!=’\0’)&&(*b!=’\0’)&&(*a==*b)){a++;b++;}return(
随机试题
TheNeedforHolidaysYou’venodoubtheardpeoplesayhowmuchthey"need"aholiday,whenwhattheyreallymeanisthatthe
下列不属于中央职级督学的是()
(2010年4月)简述真理及其客观性的含义。
信念是人的_____的统一体或“合金”。
鼻咽腔位于
下述产程时间哪项不正确()
有关本案中森林大酒店与小毛所签劳动合同的效力的下列评论,哪项是正确的?()。森林大酒店在延长试用期期间降低小毛工资的做法是否正确?为什么?()。
某公司2009年末资产负债率为0.6,股东权益总额为400万元,销售收入为1000万元,预计支付股利总额为60万元,股利支付率为60%,2008年末总资产净利率为9%,销售净利率为12%,权益乘数为2。全部财务比率用年末数据计算。要求:(1)计算
关于文书催办,正确的说法是()。
如何看待“干部出数字、数字出干部”现象?
最新回复
(
0
)