首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中,fun函数的功能是:在任意给定的N个正整数中,从左到右依次逐个取三个数作为一组,按值大小找出该组数的中值,用该中值替换与该组数对应的原三个数中的中间位置的数。处理后原数列中首尾2个数不变。处理后数列在主函数中输出。 例如,有10个
给定程序MODI1.C中,fun函数的功能是:在任意给定的N个正整数中,从左到右依次逐个取三个数作为一组,按值大小找出该组数的中值,用该中值替换与该组数对应的原三个数中的中间位置的数。处理后原数列中首尾2个数不变。处理后数列在主函数中输出。 例如,有10个
admin
2019-04-04
10
问题
给定程序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 2l 45 38
第5组数为:18 5 8中值为:8替换后的数列为:6 6 7 18
18 18 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
8 21 45
38
第8组数为:2l 45 38中值为:38替换后的数列为:6 6 7 18 18 8 8
21 38 38
最终结果为:6 6 7 18 18 8 8 21 38 38
请改正程序中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include < stdio.h >
#define N 1 0
int findmid(int a,int b,int c)
{int t;
t=(a >b)?(b >c?b:(a >c?c:a)):((a >c)?a:((b >c)?c:b));
/*********found*********/
return b;
}
void fun(int x[])
{int i,a,b,c,t[N];
/*********found*********/
for(i=0;i < N;i++)t
=x
for(i=0;i < N一2;i++)
{a=t
;b=t[i+1];c=t[i+2];
/*********found*********/
t[i+1]=findmid(a,b,c);
}
}
main()
{int i,x[N]={6,5,7,2 3,18,5,8,21,4 5,38);
for(i=0;i < N;i++)
printf("%d",x
);
printf("\n");
fun(x);
for(i=0;i < N;i++)
printf("%d",x
);
printf("\n");
}
选项
答案
(1)retum t; (2)for(i=0;i < N;i++)t[i]=x[i]; (3)x[i+1] =findmid(a,b,c);
解析
(1)函数findmid的功能是找到a、b、c三个数中的中间数,并存放在变量t中,因此应返回t。
(2)语法错误,句末缺少分号。
(3)本程序是对数组x进行操作,数组t只是用来暂时存放数组x中的元素,因此此处应为x[i+1] = findmid(a,b,c)。
转载请注明原文地址:https://jikaoti.com/ti/Y5f0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下叙述中错误的是______。
若变量a是int类型,并执行了语句:a=’A’+1.6;则正确的叙述是
结构化分析方法是面向()的自顶向下逐步求精进行需求分析的方法。
在结构化方法中,软件功能分解属于软件开发中的______阶段。
数据处理的最小单位是
数据库恢复是将数据库从______状态恢复到某一已知的正确状态。
设有定义:structcomplex{intreal,unreal;}datal={1,8},data2;则以下赋值语句中错误的是
下述程序的输出结果是()。#includemain(){inti;for(i=1;i<=10;i++){if(i*i>=20)&&(i*i<=100))break;
下列表达式中,可以正确表示x≤0或x≥1的关系是()。
有以下程序:#include<stclio.h>main(){charc;while((c=getchar())!=’?’)putchar(--c);}程序运行时,如果从键盘输入:Y?N?<回车>,则
随机试题
当a、b为何值时,非齐次线性方程组有唯一解?有无穷多个解?并求有无穷多解时的通解.
患者,女,36岁。诊断为特发性血小板减少性紫癜。入院后告知患者禁用的药物是
男性55岁。因心慌3小时来急诊室,病人4个月来消瘦,大便次数增多,最近1个月已有过3次阵发性心律不齐,体检:甲状腺肿大,有多个结节,心脏扩大,心率(120~130)次/分,心律绝对不齐。1周前曾在门诊检查血甲状腺激素水平及甲状腺吸131I率均增高,急诊治疗
未发生转移的癌一定是原位癌。()
()就是把具有相同属性或特征的特点的信息归并在一起,把不具有这种共同属性或特征的信息区别开来的过程。
甲公司2016年5月5B购入乙公司普通股股票,成本为9200万元,甲公司将其划分为以公允价值计量且其变动计入当期损益的金融资产。2016年年末甲公司持有的乙公司股票的公允价值为11600万元。2017年年末,该批股票的公允价值为10400万元。甲公司适用的
以行政的领导取代或者削弱党委的领导,必将使公安工作失去有力的()。
推进我国产业结构的优化升级,必须形成的产业格局是()。①以高新技术产业为先导②以农业为主导③以基础产业和制造业为支撑④服务业全面发展
关于计算机系统中通用的寻址方式,以下说法中不正确的是()。
条件测试是检查程序模块中所包含逻辑条件的测试用例设计方法,注重于测试程序中的条件。BRO(BranchandRelationalOperator)测试保证能发现布尔变量和关系操作符只出现一次且没有公共变量的条件中的分支和条件操作符错误。考虑条件C1:
最新回复
(
0
)