首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数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
2020-11-27
49
问题
下列给定程序中,函数fun的功能是:把形参a所指数组中的最小值放在元素a[0]中,接着把a所指数组中的最大值放在a[1]元素中;再把a所指数组元素中的次小值放在a[2]中,把a所指数组元素中的次大值放在a[3],以此类推。
例如,若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7;则按规则移动后,数据排列为:1、9、2,8、3、7、4、6、5。形参n中存放a所指数组中数据的个数。
规定fun函数中的max存放当前所找的最大值,px存放当前所找最大值的下标。
请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
#deftne N9
void fun(int a[],int n)
{int i,j,max,min,px,pn,t;
for(i=0;i<n-1;i+=2)
{
/**********found**********/
max=min==[1];
px=pn=i;
for(j=i+1;j<n;j++){
/**********found**********/
if(max<[2])
{max=a[j];px=j;}
/**********found**********/
if(min>[3])
{min=a[j];pn=j;}
}
if(pn!=i)
{t=a
;a
=min;a[pn]=t;
…‘、
}
if(px!=i+1)
{t=a[i+1];a[i+1]=max;a[px]=t;}
}
}
main()
{int b[N]={9,1,4,2,3,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[i] (2)a[j] (3)a[j]
解析
填空1:for循环语句循环体中将数组元素a
赋值给变量nlax和变量rain。
填空2:通过一次for循环,找到数组中的最大值,if语句的条件表达式是nlax<a[j]。
填空3:同理,此处if语句的条件表达式是min>a[j]。
转载请注明原文地址:https://kaotiyun.com/show/re3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序,程序运行后的输出结果是#include#defineN2#defineMN+1#defineNUM(M+1)*M/2main(){printf("%d\n",NUM);}
有以下程序intflintx);main(){intn=1,m;m=f(f(f(n)));printf("%d\n",m);)mtflintx){returnx*2;}程序运
有以下程序段intn,t=1,s=0;scanf(“%d”,&n);do{s=s++;t=t-2;}while(t!=n);为使此程序段不陷入死循环,从键盘输入的数据应该是
以下叙述中正确的是
有以下程序#includemain()#defineN4{intx[][N]={{1,2,3),{4),{5,6,7,8),{9,10}},voidfun(inta[][N],intb[])
关于程序的编译执行和解释执行,以下叙述中正确的是()。
设有如下的说明和定义struct{inta;char*s;)x,*p=&x;x.a=4;x.s="hello";则以下叙述中正确的是
若有定义语句:char*s1="OK",*s2="ok";以下选项中,能够输出"OK"的语句是
设栈的存储空间为S(1:m),初始状态为top=m+1。经过一系列入栈与退栈操作后,top=m。现又在栈中退出一个元素后,栈顶指针top值为()。
我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是
随机试题
与“三仕三见逐于君”句式不同的一句是()。
王某。男,43岁。每于发作前常有眩晕、胸闷、乏力等症状,发则突然尖叫,旋即倒下,抽搐吐涎,二便失常。苔白腻,脉弦滑。治疗宜首选:
某商业大厦室外采用铝合金门窗,室内采用木门窗,办公室铺实木复合地板。幕墙工程采用全玻幕墙。经检查发现木地板铺设不符合规范要求。
济南素有“泉城”之称。清人刘鹗在《老残游记》中曾描述济南是()
设全集U=R,集合A={x|x2+x-2>0},B={x|x2一2x-3<0},则=()
某学生既想参加舞蹈比赛锻炼自己,又害怕跳不好被人耻笑。这时他面临的心理冲突是()。
关于水资源,下列说法错误的是:
关于我国的政党制度说法正确的有
以下关于单机操作系统的描述中,哪种说法是错误的()。
Whichdaysdoestheman’ssonnotwork?
最新回复
(
0
)