首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中,fun函数的功能是:在任意给定的N个正整数中,从左到右依次逐个取三个数作为一组,按值大小找出该组数的中值,用该中值替换与该组数对应的原三个数中的中间位置的数。处理后原数列中首尾2个数不变。处理后数列在主函数中输出。例如,有10个正
给定程序MODI1.C中,fun函数的功能是:在任意给定的N个正整数中,从左到右依次逐个取三个数作为一组,按值大小找出该组数的中值,用该中值替换与该组数对应的原三个数中的中间位置的数。处理后原数列中首尾2个数不变。处理后数列在主函数中输出。例如,有10个正
admin
2016-12-06
62
问题
给定程序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://kaotiyun.com/show/ENDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序段中,能够通过调用函数fun,使main函数中的指针变量p指向一个合法的整型单元的是______。
若有以下程序段:intm=0,n=0;charc=’a’;scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入:10A10<回车>,则输出结果是__
设有定义:floata=2,B=4,h=3;,以下C语言表达式中与代数式计算结果不相符的是______。
以下程序通过函数SunFun求。这里f(x)=x2+1,由F函数实现。请填空。main(){printf("Thesum=%d\n",SunFun(10));}SunFun(intn){int
以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请填空。main(){inti,a[20],sum,count;sum=count=0;for(i=0;i<20;i
以下程序的功能是将字符串s中的数字字符放人d数组中,最后输出d中的字符串。例如,输入字符串abc123edf456gh,执行程序后输出123456。请填空。#include<stdio.h>#inclu
以下程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。main()/*Beginning*/{intr;floats;scanf("%d",&r);s=*π*r*r*r;printf("
数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流;【】和处理过程。
有如下函数调用语句:func(rec1,rec2+rec3,(rec4,rec5));该函数调用语句中,含有的实参个数是______。
随机试题
SteamshipswerefirstintroducedintotheUnitedStatesin1807,andJohnMoisonbuiltthefirststeamshipinCanada(thencalled
最佳诊断应为降压药首选
胸痹重证,阴寒极盛者,其治法是
胰岛素的不良反应有
2010年5月至2011年2月底,北京某商贸有限公司,以为大学生提供实践平台为幌子,通过签订社会实践合同,令其每人交300元学习费。以销售人员考核合格成为公司正式员工为诱惑,利用在校大学生开展推广、销售其公司产品“三凯瑞”保健品的活动。涉及北京30多所学校
混凝土施工缝宜留置在:
RLC串联电路如图7—2一11所示,在工频电压u(t)的激励下,电路的阻抗等于()。[2011年真题]
某工程项目计划工程量100m3,计划单价20元/m3,实际完成工程是150m3,实际单价18元/m3,该工程的进度偏差为()元。
下列数据结构中,属于非线性结构的是
一个项目具有…个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于【】的联系。
最新回复
(
0
)