首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数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
2017-02-24
63
问题
下列给定程序中,函数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存放当前所找最大值的下标。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N 9
void fun(int a[],int n)
{ int i,j,max,min,px,pn,;
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
=rain;a[pn]=t;
if(px==i)px=pn;
}
if(px!=i+1)
{ t=a[i+1],a[i+1]=max;
a[px]=t;)
}
}
void 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("%4 d",b
);
printf("\n");
fun(b,N);
printf("\nThe data aftermoving:\n");
for(i=0;i<N;i++)
printf("%4 d",b
);
printf("\n");
}
选项
答案
(1)a[i] (2)a[j] (3)a[j]
解析
本题考查:数组的引用;if语句条件表达式,如果表达式的值为真,则执行下面的语句,如果该值为假,则不执行下面的语句。
填空1:for循环语句循环体中将数组元素a
赋值给变量max和变量min。
填空2:通过一次for循环,找到数组中的最大值,if语句的条件表达式是max<a[j]。
填空3:同理,此处if语句的条件表达式是min>a[j]。
求最大值或者最小值的题目,一般都是先假设一个元素最大或最小,然后通过if条件语句将该元素和其他元素进行比较操作来完成。
转载请注明原文地址:https://kaotiyun.com/show/o0Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序段,且变量已正确定义和赋值for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1));printf("s=%f\n\n",s);请填空,使下面程序段的功能与之完全相同S=1.0;k=1;while([8]
数据的逻辑结构有线性结构和______两大类。
软件定义时期主要包括______和需求分析两个阶段。
下面程序段的运行结果是chara[]="lanuage",*p;p=a;while(*p!=’u’){printf("%c",*p-32);p++;}
已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是
以下程序的输出结果是【】。#includemain(){inta[5]={2,4,6,8,10},*p;p=a;p++;printf("%d",*p);}
下面程序的功能是:计算110之间的奇数之和与偶数之和,请填空。#includemain(){inta,b,c,I;a=c=0;for(I=0;I
函数的值通过return语句返回,下面关于return语句的形式描述错误的是
阅读以下程序及对程序功能的描述,其中正确的是#includemain(){FILE*in,*out;charch,infile[10],outfile[10];printf("Entertheinfilename:\n"
若变量均已正确定义并赋值,以下合法的C语言赋值语句是
随机试题
水平固定管的对接焊缝包括了平焊、立焊和仰焊焊接位置。
正常人血浆的pH为
有关电子记录说法不正确的是
以上哪种情况多见于无排卵型功血以上哪种情况多见于黄体功能不全
乳痈脓肿切开时错误做法是
纳税人有下列()行为之一的,由税务机关责令限期改正,可以处2000元以下的罚款;情节严重的,处2000元以上1万元以下的罚款。
义务教育既可以保障公民的基本权利,又可以培养公民的法律意识。()
近代警察发端于()。
下列选项中,由选民直接选举的是()。
走进梅溪景区,三座高大的牌坊_________眼前。经历风雨洗刷的牌坊,有些泛黄,陈芳家族所承载的荣耀,都_________在这泛黄的牌坊中,读起来饶有风味。填入画横线部分最恰当的一项是:
最新回复
(
0
)