首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数fun的功能是:把形参a所指数组中的最大值放在a[0]中,接着求出a所指数组中的最小值放在a[1]中;再把a所指数组元素中的次大值放在a[2]中,把a数组元素中的次小值放在a[3]中;其余以此类推。例如:若a所指数组中的数据最初排列为:1、4、2、3、
函数fun的功能是:把形参a所指数组中的最大值放在a[0]中,接着求出a所指数组中的最小值放在a[1]中;再把a所指数组元素中的次大值放在a[2]中,把a数组元素中的次小值放在a[3]中;其余以此类推。例如:若a所指数组中的数据最初排列为:1、4、2、3、
admin
2015-06-08
48
问题
函数fun的功能是:把形参a所指数组中的最大值放在a[0]中,接着求出a所指数组中的最小值放在a[1]中;再把a所指数组元素中的次大值放在a[2]中,把a数组元素中的次小值放在a[3]中;其余以此类推。例如:若a所指数组中的数据最初排列为:1、4、2、3、9、6、5、8、7,则按规则移动后,数据排列为:9、1、8、2、7、3、6、4、5。形参n中存放a所指数组中数据的个数。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
#irlclude
#define N 9
/**********found***********/
void fun(int ___1___ , int n)
{ int i,j,max,min,px,pn,t;
/**********found***********/
for (i=0; i
{ max=min=a
;
px=pn=i;
/**********found***********/
for(j=___3___; j
{ if(max
{ max=a[j]; px=j;}
if(min>a[j])
{ min=a[j]; pn=j;)
}
if(px!=i)
{ t=a
; a
=max, a[px]=t;
if(pn==i)pn=px;
}
if(pn!=i+1)
{t=a[i+1];a[i+1]=min;a[pn]=t;)
}
}
main()
{ int b[N]={1,4,2,3,9,6,5,8,7),i;
printf(“\nThe original data:\n”);
for(o=0;i
);
printf(“\n”);
fun(b,N);
printf(“\nThe data after moving:\n”);
for (i=0;i
);
printf(”\rl”);
}
选项
答案
(1)*a (2)2 (3)j+1
解析
本题中函数的功能是将数组中的元素下标为偶数的元素按照从大到小排序,下标为奇数的元素按照从小到大排序,相当于2个排序过程。在fun函数中,采用选择排序法进行排序,分别用max和min存储每次寻找的最大值和最小值,px和pn记录每次查找到的最大值和最小值的下标位置。
[解题思路]
第一窄:主函数内fun函数的调用“fun(b,N);”,其中b为整型数组名,故fun函数的第一参数为整型指针,又根据“max=a[j]”可知第一个参数名为a,故第一空处为“*a”。
第二空:根据题意a所指数组中的最大值放在a[0]中,接着求出a所指数组中的最小值放在a[1]中;再把a所指数组元素中的次大值放在a[2]中,把a数组元素中的次小值放在a[3]中,升序排序和降序排序的下标变化是每次在前一次的基础上+2,即a[0]、a[2]、a[4]…降序排序,a[1]、a[3]、a[5]…升序排序,故第二空应为“2”。
第三空:选择排序法中的升序排序,首先从数组中挑选一个最小的元素,把它和第一元素交换,接着从剩下的n-1个元素中再挑出一个最小的元素,把它和第二个元素交换,不断重复以上过程,直到比较完最后两个元素。故内层循环变量i应该从i+1开始,因此第三空处应为“i+1”。
转载请注明原文地址:https://kaotiyun.com/show/yiJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下面程序运行后的输出结果是______。structabc{inta,b,c;}main(){structabcs[2]={{1,2,3},{4,5,6}};intt=-s[0].a
有如下程序:#definen2#definemN+1#defineNUM2*m+1main(){inti;for(i=1;i<=NUM;i++)printf("%d\n",
下列函数定义中,会出现编译错误的是______。
有如下程序main(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printf("%f\n",
能正确表示逻辑关系""a≥10或a≤0""的C语言表达式是______。
若已定义:inta[10],i;,以下fun函数的功能是:在第一个循环中给前10个数组元素依次赋1、2、3、4、5、6、7、8、9、10;在第二个循环中使a数组前10个元素中的值对称拆叠,变成1、2、3、4、5、5、4、3、2、1。请填空. fun(
库函数strcpy用以复制字符串,若有以下定义和语句:charstr1[]="china",str2[10],*str3,*str4="china";则对库函数strcpy的正确的调用是_______。
请读程序片段(字符串内没有空格字符):printf("%d\n",strlen("ATS\n012\1\\"));上面程序片段的输出结果是_______。
以下不能正确定义二维数组的选项是()。
随机试题
某元素的相对原子质量为24,化合价为+2,该元素在氧化物中的质量分数为()。
王某,女,27岁,汉族,大专学历。家中独生女,家境富裕。王某和她的丈夫结婚已有四年,婚后发现丈夫和一女同事交往甚密,她总担心自己的丈夫会出轨。大半年来一直处于焦躁、烦恼之中。在家里时常和老公、孩子乱发脾气,工作上因为不能按时完成领导交给的工作,引起单位领导
计算二重积分dxdy,其中D是第一象限内圆x2+y2=2x及直线y=0所围成的区域.
患者男性,74岁,因儿子打官司而担忧渐出现夜眠差,情绪低落,悲观厌世,总担心打官司的事情,患者自觉很痛苦,生活缺乏主动性。该患者的主要护理问题
善意占有属于()行为。
甲企业销售一批货物给乙企业,该销售行为取得利润20万元,乙企业将该批货物销售给丙企业,取得利润200万元。税务机关经过调查后认定甲企业和乙企业之间存在关联交易,将200万元的利润按照6:4的比例在甲和乙之间分配。该调整方法是()。
小学教育是面向全体学生实施的全面教育,所以,小学教师在教学中应该注意整体学生的发展,而不应该强调学生个体的发展。()
国家消亡是指资产阶级国家的自行消亡,即随着阶级对立和阶级差别的消灭,在完成了自己的历史使命后,自行退出历史舞台。()
中华人民共和国成立初期,建立社会主义国营经济的主要途径是()
A——expoJ——reserveaspotB——registrationfeeK——themezones
最新回复
(
0
)