首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。 例如,有9个正整数:1 5 7 23
给定程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。 例如,有9个正整数:1 5 7 23
admin
2016-12-06
43
问题
给定程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。
例如,有9个正整数:1 5 7 23 87 5 8 21 45
按升序排列时的中间数为:8
处理后主函数中输出的数列为:8 8 8 23 87 8 8 21 45
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
试题程序:
1 #inclucte<stdio.h>
2 #define N 9
3 int fun(int x[])
4 {int i,j,k,t,mid,b[N];
5 for(i=0;i<N;i++)
6 b
=x
;
7 for(i=0;i<=N/2;i++)
8 {k=i;
9 for(j=i+l;j<N;j++)
10 if(b[k]>b[j])k=j;
11 if(k!=i)
12 {
13 /*********found*********/
14 t=b
;b
=
【1】
;
15 b[k]=t;
16 }
17 }
18 /*********found*********/
19 mid=b[
【2】
];
20 for(i=0;i<N;i++)
21 /*********found*********/
22 if(x
【3】
mid)x
-mid;
23 return mid;
24 }
25 main()
26 {int i,x[N]={1,5,7,23,87,5,8,21,45};
27 for(i=0;i<N;i++)
28 printf(’’%d’’,x
);
29 printf(’’\nThe mid data is:%d\n’’,fun(x));
30 for(i=0;i<N;i++)
31 printf(’’%d’’,x
);
32 printf(’’\n’’);
33 }
选项
答案
(1)b[k] (2)4或N/2 (3)<
解析
数组中的9个数任意排列,要找到按升序排列时处于中间位置的数,应首先对数组进行升序排列。因为只需找到中间位置的数即可,故不必对整个数组进行排序,只需要排列出数组的前半部分。找到中间数后,遍历原数组,将小丁中问数的冗素进行替换。
填空1:利用选择算法排序,先指定一个元素为最小,用这个数与其后的所有数进行比较,若找小于此数,则进行替换。此处考查替换操作。
填空2:元素mid存放中间位置的数,数组长度为9,因此中间元素数为b[4]。
填空3:遍历数组,当元素小于中间位置的数(即mid)时,进行替换。
转载请注明原文地址:https://jikaoti.com/ti/hLi0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有定义语句chars[100],d[100];intj=0,i=0;且s中已赋字符串,请填空以实现拷贝。(注:不使用逗号表达式)whi1e()s[i]){d[j]=【】:j++;}d[j]=0;
以下程序的输出是【】。main(){charstr1[]=Howdoyoudo",*p=strl;strcpy(str1+strlen(str1)\2"esshe");pfinff("
注释说明了程序的功能,它分为【】注释和功能性注释。
对于长度为n的顺序存储的线性表,当随机插入和删除—个元素时,需平均移动元素的个数为【】。
以下程序段中,能够通过调用函数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<回车>,则输出结果是__
以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请填空。main(){inti,a[20],sum,count;sum=count=0;for(i=0;i<20;i
数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流;【】和处理过程。
有以下函数:fun(char*a,char*b){while((*a!=’\0’)&&(*b!=’\0’)&&(*a==*b)){a++;b++;}return(
结构化分析方法是面向()的自顶向下、逐步求精进行需求分析的方法。
随机试题
随着土地改革的基本完成,我国社会主义主要矛盾逐步成为()
急性卡他性结膜炎治疗中,下列哪一项处置是不正确的
支气管哮喘缓解期肺虚证的治法是()
甲乙两国就海洋的划界一直存在争端,甲国在签署《联合国海洋法公约》时以书面声明选择了海洋法法庭的管辖权,乙国在加入公约时没有此项选择管辖的声明,但希望争端通过多种途径解决。根据相关国际法规则,下列选项正确的是:
下列选项中,()不属于行为税。
下列关于企业为固定资产减值测试目的预计未来现金流量的表述中,不正确的有()。
某企业为增值税一般纳税人,设有一个基本生产车间,生产销售M、N两种产品。2×17年10月初M产品直接材料成本165万元,直接人工及制造费用60万元,N产品无在产品。2×17年10月份,该企业发生相关的经济业务如下:(1)8日,采购生产M、N产品所需要
简述可转换债券筹资的利弊。(中央财经大学2012真题)
某段时间内某磁盘将要被访问的磁道号为28、32、87、134、96、15,设初始时从50号磁道开始向磁道号增加方向访问。若采用扫描算法(SCAN),则平均寻道长度约为(1)。
如果在VisualBasic集成环境中没有打开属性窗口,下列可以打开属性窗口的操作是( )。
最新回复
(
0
)