首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变
admin
2018-10-21
69
问题
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出理后的数据序列,并将中间数作为函数值返回。
例如,有9个正整数:1 5 7 23 87 5 8 21 45
按升序排列时的中间数为:8
处理后主函数中输出的数列为:8 8 8 23 87 8 8 21 45
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N9
int fun(int x[])
{int i,j,k,t,mid,b[N];
for(i=0;i<N;i++)
b
=x
;
for(i=0;i<=N/2;i++)
{k=i;
for(j=i+l;j<N;j++)
if(b[k]>b[j])k=j;
if(k!=i)
{
/*********found*********/
t=b
;b
=
【1】
;
b[k]=t;
}
}
/*********found*********/
mid=b[
【2】
];
for(i=0;i<N;i++)
/*********found*********/
if(x
【3】
mid)x
=mid;
return mid:
}
main()
{int i,x[N]={1,5,7,23,87,5,8,21,45};
for(i=0;i<N;i++)
prntf("%d",x
);
printf("\nThe mid data is:%d\n",
fun(x));
for(i=0;i<N;i++)
printf("%d",x
);
prLntf("\n");
}
选项
答案
(1)b[k] (2)4或N/2 (3)<
解析
数组中的9个数任意排列,要找到按升序排列时处于中间位置的数,应首先对数组进行升序排列。因为只需找到中间位置的数即可,故不必对整个数组进行排序,只需要排列出数组的前半部分。找到中间数后,遍历原数组,将小于中间数的元素进行替换。
填空1:利用选择算法排序,先指定一个元素为最小,用这个数与其后的所有数进行比较,若找小于此数,则进行替换。此处考查替换操作。
填空2:元素mid存放中间位置的数,数组长度为9,因此中间元素数为b[4]。
填空3:遍历数组,当元素小于中间位置的数(即mid)时,进行替换。
转载请注明原文地址:https://kaotiyun.com/show/G0xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
运行以下程序后,如果从键盘上输入6514<回车>,则输出结果为______。main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!
实体联系模型是一种常用的高级概念数据模型,而______是实体联系模型中的核心。
以下函数调用语句中含有_______个实参。func((exp1,exp2),(exp3,exp4,exp5));
要求以下程序的功能是计算main(){intn;floats;s=1.0;for(n=10;n>1;n--)s=s+1/n;pfintf("%6.4f\n",s);}程序
执行下面的程序后,a的值为main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;
下列程序的运行结果是()。#include<stdio.h>main(){inta=0,b=4,c=0,d=10,x;if(a)d=d-10;else
有以下程序:main(){chars[]="ABCD",*p;for(p=s+1;p<s+4;p++)printf("%s\n",p);}程序运行后的输出结果是()。
数据的存储结构是指
以下程序的功能是:输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。main()(inti,j;for(i=0;i<i0;i++){j=i*10+6;if(())continue;
以下程序的功能是:将输入的正整数按逆序输出。例如:若输入135则输出531。请填空。#includemain(){intn,s;printf("Enteranumber:");scanf("%d",&n);prin
随机试题
需要桥接两条曲线间的一段空隙,结果既要保证相切也要跟随先前两条曲线的总体形状。应该选择下面哪一种连续的方法?
A.100级B.1000级C.10000级D.100000级E.300000级《药品生产质量管理规范》附录规定供角膜创伤或手术用滴眼剂的配制和灌装的洁净区洁净级别应为
王先生,70岁。高血压史30年。于家中如厕时突感头晕,随即倒地而送至医院,诊断为脑出血。体检:昏迷,左侧偏瘫,血压为25.3/14.6kPa(190/110mmHg)。护士为保持王先生安静卧床,护理动作轻柔,其目的是
该工程还有哪些安全风险源未被辨识?对此应制定哪些控制措施?针对本工程,安全验收应包含哪些项目?
适用海关A类管理的加工贸易企业进口的78种客供辅料,且总价不超过()的,可以不设立银行保证金台账,甚至不申领《登记手册》。
在对财务报表审计完成后,注册会计师应以适当方式与治理层沟通。()
假定你是李薇,在一位名叫TigerMom的学生家长的博客上,你看到如下内容。请根据博客内容、写作要点和要求,给这位家长回复。I’mthemotherofafourteen-year-old.Ihavearuleformy
国家政治保卫局于()建立。
Doyouwanttoliveforever?Bytheyear2050,youmightactuallygetyourwish—providingyouarewillingtoleaveyourbiolog
Anewpartnerpushesouttwoclosefriendsonaverage,leavingloverswithasmallerinnercircleofpeopletheycanturntoin
最新回复
(
0
)