首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:将n个无序整数从小到大排序。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include #include #in
下列给定程序中,函数fun的功能是:将n个无序整数从小到大排序。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include #include #in
admin
2021-05-06
100
问题
下列给定程序中,函数fun的功能是:将n个无序整数从小到大排序。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include
#include
#include
fun(int n,int*a)
{
int i,j,p,t;
for(j=0;j
{
p=j;
/*********found*********/
for(i=j+1;i
if(a[p]>a
)
/*********found*********/
t=i;
if(p!=j)
{t=a[j];a[j]=a[p];a[p]=t;}
}
}
putarr(int n,int*z)
{
int i;
for(i=1;i<=n;i++,z++)
{
printf("%4d",*z);
if(!(i%10))printf("\n");
}
printf("\n");
}
void main()
{
int aa[20]={9,3,0,4,1,2,5,6,8,10,7),n=11;
system("CLS");
printf("\nBefore sorting%d
numbers:\n",n);
putarr(n,aa);
fun(n,aa);
printf("\nAfter sorting%d
numbers:\n",n);
putarr(n,aa);
}
选项
答案
(1)for(i=j+1;i
解析
该程序是对n个无序数实现从小到大的排序,先找出整数序列的最小项,置于指针第1个元素的位置;再找出次小项,置于第2个元素的位置;之后顺次处理后续元素。
(1)数组的长度为n,所以最后一个元素的下标值为n一1,i的取值范围应该包括此下标值。
(2)p是中间变量,存放值较小的元素下标。
转载请注明原文地址:https://kaotiyun.com/show/pCfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为
有如下语句序列:charstr[10];cin>>str;当从键盘输入"Ilovethisgame"时,str中的字符串是()。
有如下程序:#includeusingnamespacestd:classMyClass{public:MyClass(inti=0){tout
必须用一对大括号括起来的程序段是()。
在语句"cout
要定义整型数组x,使之包括初值为0的3个元素,下列语句中错误的是()。
数据流图中带有箭头的线段表示的是()。
下列关于重载运算符错误的是
从表中任何一个结点位置出发就可以不重复地访问到表中其他所有结点的链表是
用树形结构表示实体之间联系的模型是()。
随机试题
扫描仪支持的扫描幅面大小是
形容词和形容词的重叠式都可以接受部分程度副词的修饰。()
下列不属于中世纪商法的渊源的是()
胸痹心痛患者,脉象多见
2×17年1月1日,甲公司采用分期收款方式向乙公司销售一批商品,合同约定的销售价格为5000万元,分5年于每年12月31日等额收取。该批商品成本为3800万元。如果采用现销方式,该批商品的销售价格为4500万元。不考虑增值税等因素,2×17年1月1日,甲公
逐页检查一本书每页的印刷错误个数,应当用()
①“原谅他的罪恶,也原谅他的美德。”哲学家的通达与宽容,适于评价一切历史上的伟人。而当后人记起某一位伟人的时候,总是因为他的美德或罪恶依然活在现实中。不过,仰视着伟人的常人,多半是宽容的。②但后世对汉武帝的评价并不一致。蓬莱银阙、露溥金掌的求仙生涯不必说
如图,学校操场的400米跑道中套着300米小跑道,大跑道与小跑道有200米路程相重。甲以每秒6米的速度沿大跑道逆时针方向跑,乙以每秒4米的速度沿小跑道顺时针方向跑,两人同时从两跑道的交点A处出发,当他们第二次在跑道上相遇时,甲共跑了多少米?
廷寄(南京大学2009年中国近现代史复试真题)
设a=5,b=6,c=7,d=8,执行下列语句后,x的值为()。x=IIf((a>b)And(c>d),10,20)
最新回复
(
0
)