首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请补充函数fun(),该函数的功能是:把数组aa中元素下标为偶数的元素按从小到大重新保存在原数组中,其它元素位置不变。 例如,输入“33,67,42,58,25,76,85,16,41, 56”,则输出“25,67,33,58,41,76,42,16
请补充函数fun(),该函数的功能是:把数组aa中元素下标为偶数的元素按从小到大重新保存在原数组中,其它元素位置不变。 例如,输入“33,67,42,58,25,76,85,16,41, 56”,则输出“25,67,33,58,41,76,42,16
admin
2010-09-14
45
问题
请补充函数fun(),该函数的功能是:把数组aa中元素下标为偶数的元素按从小到大重新保存在原数组中,其它元素位置不变。
例如,输入“33,67,42,58,25,76,85,16,41, 56”,则输出“25,67,33,58,41,76,42,16,85,56”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
# include<s tdio. h>
#define N 10
void fun(int aa[])
{
int i, j, t;
for (i=0; i<N;i=i+2)
{
for(【 】; j<N; j=j+2)
if (【 】)
{
t=aa [j];
aa [j] =aa
;
aa
=t;
}
}
}
main ()
{
int i;
int aa[N]={33, 67,42, 58, 25, 76, 85, 16,
41, 56};
clrscr ();
printf("\n*** original list ***\n");
for(i=0; i<N; i++)
printf ("%4d", aa
);
fun (aa);
printf("\n*** new list ***\n");
for(i=0; i<N; i++)
printf ("%4d", aa
);
}
选项
答案
j=i或j=i+2 aa[i]>aa[j]
解析
第一空:本题采用选择法进行排序。选择法的算法思路是:如果有n个数则从头到倒数的第2个数一个一个往后走动,每走动一个数总是将这个数与其后的所有数进行两两比较,在比较时按题目要求的顺序将进行比较的这两个数排序 (即交换)。所以此空填j=i,而填j=i+2也可以,因为如果第一次执行循环体时j=i,则aa
和aa[j]是同一个元素,不会引起任何改变,所以可以从它的下一次循环刀:始,即j=i=2。第二空:两两比较时,如果后面的元素比前面的元素小,则将两数交换,实现从小到大排列。
转载请注明原文地址:https://kaotiyun.com/show/gWID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列叙述中,错误的是()。
下列人物与研究成果对应错误的一项是()。
阿尔泰国立大学的生物学家研制出转基因成分快速检测仪.可在较短时间内检测出食品中是否含有某种转基因成分。以下对转基因说法错误的是()。
下列说法错误的是()。
甲挑唆乙(甲、乙均已成年)去打正在熟睡的狗,狗被激怒后追乙,恰巧丙经过,乙便躲在丙的身后,狗将丙咬伤。根据《侵权责任法》的有关规定,下列表述错误的是()。
下列以平衡国际收支的暂时不平衡为主要功能的组织是()。
甲、乙两个仓库共存药45吨,现从甲仓库调出库存的60%,从乙仓库调出库存的40%支援非洲,结果两仓库药品库存相差3吨。甲、乙仓库原本库存的比例可能是多少?
掷两个骰子,掷出的点数之和为奇数的概率为P1。掷出的点数之和为偶数的概率为P2,问P1和P2的大小关系是()。
随机试题
A.O.5~1gB.0.15~0.3gC.0.001~0.01gD.1~3g
γ-谷氨酰转肽酶(GGT)含量最多的器官为
A.氘灯B.棱镜C.聚乙烯薄膜D.标准石英旋光管E.水
()表现为舌体软弱,屈伸无力。
对于甲公司而言,下列各项交易中,应当按照债务重组准则进行会计处理的是()。
【教学材料】TraditionalChinesedoctorsbelieveweneedabalanceof"yin"and"yang"tobehealthy.Forexample,areyouoftenweak
AnearthquakehitKashmironOct.8,2005.Ittooksome75000lives,【C1】______130000andleftnearly3.5millionwithoutfood
下列程序的运行结果是()。#includevoidsub(int*s,int*y){staticintm=4;*y=s[0];m++:}voidmain(){
★他已经写完作业了。()
Thepremiseofrecallingis______.
最新回复
(
0
)