首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C语言函数,将应填入(n)处。 [说明] 函数int find_Max_Min(int a[],int n)的功能是:找出n个元素的数组a中的最大元素和最小元素并输出,返回查找过程中元素的比较次数。查找方法如下:比较a[0]和a[n-1
阅读以下说明和C语言函数,将应填入(n)处。 [说明] 函数int find_Max_Min(int a[],int n)的功能是:找出n个元素的数组a中的最大元素和最小元素并输出,返回查找过程中元素的比较次数。查找方法如下:比较a[0]和a[n-1
admin
2008-04-03
36
问题
阅读以下说明和C语言函数,将应填入(n)处。
[说明]
函数int find_Max_Min(int a[],int n)的功能是:找出n个元素的数组a中的最大元素和最小元素并输出,返回查找过程中元素的比较次数。查找方法如下:比较a[0]和a[n-1],若a[0]大,则交换a[0]和a[n-1]的值:再比较a[1]和a[n-2],若a[1]大,则交换a[1]和a[n-2]的值;以此类推,直到所有的元素都比较完。然后在数组的前半区从前往后找出小元素,在后半区从后往前找出大元素。
[函数]
int find_Max_Min(int a[],int n)
{/*找出n个元素的数组a的最大、最小元素并输出,返回查找过程元素中的比较次数*/
int i,Count=0;
int temp,Maxnum,Minnum;
for(i=0; i<n/2; i++){
Count=Count+1 /*元素比较次数计数*/
if(a
>a[(1)])
{/*数组元素交换代码略*/}
}
Maxnum=a[n-1]; Minnum=a[0];
for(i=1;i<n/2+n%2;i++){
Count=(2); /*元素比较次数计数*/
Minnum=(3)? a
:Minnum; /*找最小元素*/
Maxnum=(4)?(5):Maxnum; /*找最大元素*/
}
printf("Max=%d\n",Maxnum);
printf("Min=%d\n",Minnum);
return Count;
}
选项
答案
(1)n-i-1(2)Count+2(3)a[i]<Minnum (4)a[n-i-1]>Maxnum(5)a[n-i-1]
解析
本题考查编写C语言程序的基本知识。
先分析第一个for语句。
for(i=0; i<n/2; i++){
Count=Count+1; /*元素比较次数计数*/
if(a
>a[ (1) ])
{/*数组元素交换代码略*/)
}
根据函数int find_Max_Min(int a[],int n)的功能以及题于中描述的查找方法,可知经过第一个for循环后,数组a中的元素被分成了前半区(最小元素所在区域)和后半区 (最大元素所在区域)。由于元素a[0]与a[n-1]比较,a[1]与a[n-2]比较,由于i值随循环的变化规律是0,1,2,…,因此空(1)处应填入n-1-1。
再分析第二个for语句,此前先假设a[n-1]为最大元素Maxnum,a[0]为最小元素 Minnum。
for(i=1;i<n/2+n%2;i++){
Count= (2) ; /*元素比较次数计数*/
Minnum= (3) ?a
:Minnum; /*找最小元素*/
Maxnum= (4) ? (5) :Maxnum; /*找最大元素*/
}
显然,同一个循环中在前半区查找最小元素,在后半区查找最大元素,元素比较次数计数器count的值随循环每次增加2。由于i值的变化规律为0,1,2,…,因此空(3)处填入“a
<Minnum”,结合“? a
:Minnum” 表示找到更小元素a
时用a
更新 Minnum的值:同理,在后半区找到更大元素时更新Maxnum的值,题干中已经明确在后半区从后往前找出大元素,因此空(4)处应填入“a[n-I-1]>Maxnum”,空(5)处填入“a[n-i-1]”。
转载请注明原文地址:https://kaotiyun.com/show/BsjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
随着Office软件的广泛使用,利用宏语言编制的宏病毒寄生于(16)的宏中。
计算机操作系统的功能不包括_______。
某关系表定义了“姓名”、“身份证号”、“性别”、“年龄”4个字段,其中(60)字段可以作为此关系表的主键。
局域网交换机的某一端口工作于半双工方式时带宽为100Mbps,那么它工作于全双工方式时带宽为(16)。
Windows多窗口的排列方式不包括()。
在Excel2007中,设单元格A1中的值为一100,B1中的值为100,A2中的值为0,B2中的值为1,若在C1单元格中输入“=IF(A1+B1
n=1,2,3,…,100时,[n/3]共有(4)________________个不同的数([a]表示a的整数部分,例如[3.14]=3)。
在实施项目过程中,信息处理员小王在“时间T-项目剩余工作量R”平面坐标系上动态地记录了项目实施进度,并与计划进度做了对比。在项目实施中途,从图上可以看出该项目()。
在Word文档中某一段落的最后一行只有一个字符,若想把该字符合并到上一行,___________不能做到。
随机试题
作为一名临床教师,第一位的角色是()
什么是社会意识?简述社会意识对社会存在的依赖性。
Theteachercameintotheroom,withhishands______behindhisback.
入院后因情绪激动,血压明显升高,严重头痛、意识模糊、抽搐、呕吐等,应考虑诊断诊断已成立,其发病机制为
预防鸡住白细胞虫病可选用的药物是()。
A.增加药物的水溶性,并增加解离度B.可与生物大分子形成氢键,增强与受体的结合力C.增强药物的亲水性,并增加其与受体的结合力D.明显增加药物的亲脂性,并降低解离度E.影响药物的电荷分布及作用时间药物分子中引入羟基
作家莫言获得了2012年诺贝尔文学奖,成为我国首位获得诺贝尔文学奖的本土作家。下列四组文学作品,全部属于莫言作品的是()。(易混)
王某擅自使用机动渔船渡客。渔船行驶过程中,被某港航监督站的执法人员发现,当场对王某作出罚款50元的行政处罚,并立即收缴了该罚款。关于缴纳罚款,下列哪一做法是正确的?
设树T的度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1。则T中的叶子结点数为()
设二叉树中共有15个结点,其中的结点值互不相同。如果该二叉树的前序序列与中序序列相同,则该二叉树的深度为()。
最新回复
(
0
)