首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:把形参a所指数组中的最大值放在a[0]中,接着求出a所指数组中的最小值放在a[1]中,再把a所指数组元素中的次大值放在a[2]中,把a数组元素中的次小值放在a[3]中,依此类推。 例如,若a所指数组中的数据最初排
下列给定程序中,函数fun的功能是:把形参a所指数组中的最大值放在a[0]中,接着求出a所指数组中的最小值放在a[1]中,再把a所指数组元素中的次大值放在a[2]中,把a数组元素中的次小值放在a[3]中,依此类推。 例如,若a所指数组中的数据最初排
admin
2015-11-25
60
问题
下列给定程序中,函数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所指数组中数据的个数。
请在程序的下画线处填人正确的内容并将下面线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N 9
/**********found***********/
void fun(int
【1】
,int n)
{ int i,j,max,min,px,pn,t;
/**********found***********/
for(i=0; i<n一1;i+=
【2】
)
{max=min=a
;
px=pn=i;
/**********found***********/
for(j=
【3】
;j<n;j++)
{if(max<a[j])
{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(i=0;i<N;i++)
printf(“%4d”,b
);
printf(“\n”);
fun(b,N);
printf(“\nThe data after moving
:\n”);
for(i=0;i<N;i++)
printf(“%4d”, b
);
printf(“\n”);
}
选项
答案
(1)a[] (2)2 (3)i+1
解析
填空1:由main中的函数调用语句确定函数定义的形式参数。
填空2:for循环语句中,循环变量增值为2。
填空3:确定for语句循环变量的初值。
转载请注明原文地址:https://kaotiyun.com/show/QXDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
按照“先进后出”原则组织数据的数据结构是()。
以下数据库除______外,均为严格意义上的DBMS系统。
有以下程序,其中函数的功能是将多个字符串按字典顺序排序:#include<string.h>voidf(char*p[],intn){char*t;inti,j;for(i=0;i<n-1;i++)for
已知字母A的ASCII代码值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式是
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b,则不能把结点b连接到结点a之后的语句是【】。structnode{chardata;structnode*next;}a,b
若有以下定义:structlink{intdata;structlink*next;}a,b,c,*p,*q;且变量a和b之间已有如下图所示的链表结构:指针p指向变量a,q指向变量c。则能够把c插入到a和b之间并形成
以下函数rotate的功能是:将a所指N行N列的二维数组中的最后一行放到b所指二维数组的第0列中,把a所指二维数组中的第0行放到b所指二维数组的最后一列中,b所指二维数组中其他数据不变。#defineN4voidrotade(i
用筛选法可得到2~n(n
用筛选法可得到2~n(n<10000)之间的所有素数,方法是:首先从素数2开始,将所有2的倍数的数从数表中删去(把数表中相应位置的值置成0);接着从数表中找下一个非0数,并从数表中删去该数的所有倍数;依此类推,直到所找的下一个数等于n为止。这样会得到一个序
用筛选法可得到2~n(n<10000)之间的所有素数,方法是:首先从素数2开始,将所有2的倍数的数从数表中删去(把数表中相应位置的值置成0);接着从数表中找下一个非0数,并从数表中删去该数的所有倍数;依此类推,直到所找的下一个数等于n为止。这样会得到一个序
随机试题
关于路基工程石方施工安全要点的说法错误的是()。
目前主张糖尿病病人"高糖饮食",其中碳水化合物应占总热量的比例为
房地产权属登记,是指政府对()进行登记。
建设项目总承包的核心意义在于()。[2015年真题]
下列各项不属于区域政策法规的重大变化中的相关警示信号的是()。
以下属于垄断竞争行业的特征的有()。
发现以前年度记账凭证是错误的,应当用红字填制一张更正的记账凭证。()
MOV AX,ES:[BX][SI]的源操作数的物理地址是( )。
Thisisnotmyshirt.______ismuchlargerthanthisone.
Theauthor’stoneinthispassageis______.Theauthor’sprimarypurposeinthispassageisto______.
最新回复
(
0
)