首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数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
2018-03-28
29
问题
下列给定程序中,函数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, 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)px=pn;
}
if(px!=i+1)
{ t=a[i+1];a[i+1]=max;
a[px]=t;}
}
}
void main()
{ int bin]={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 after
moving:\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语句的条件表达式是rain>a[j]。
求最大值或者最小值的题目,一般都是先假设一个元素最大或最小,然后通过if条件语句将该元素和其他元素进行比较操作来完成。
转载请注明原文地址:https://kaotiyun.com/show/IDxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是()。#include<stdio.h>#defineF(x)2.84+x#definew(y)printf("%d",(int)(y))#defineP(y)w(y)putchar(’\n
以下程序的输出结果是main(){inta=0,i;for(i=1;i<5;i++){switch(i){case0:case3:a+=2;case1:
若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为
下列程序输出结果是()。#includemain(){chara[]={’a’,’b’,’c’,’d’,’e’,’f’,’\0’};inti,j;i=sizeof(a);
字符串“\\\”ABCDEF\“\\”的长度是()。
以下数组定义中错误的是()。
在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是()。
以下函数调用语句中实参的个数是()func((exp1,exp2),(exp3,exp4,exp5));
以下选项中可作为C语言合法整数的是()。
随机试题
应收款项评估中,下列情形中可直接判断为全部坏账损失的是()。
WindowsServer2008提供了一些默认的用户账户,用于执行特定的管理任务或能够访问特定的网络资源,其中最常用的是Administrator账户和_____。
引起猩红热的主要病原菌为
A.金黄色葡萄球菌肺炎B.腺病毒肺炎C.毛细支气管炎D.支原体肺炎E.支气管肺炎主要由肺炎链球菌引起的肺炎是
患者,男性,35岁。近3个月来经常不明原因地紧张、害怕,思虑多,不能控制胡思乱想,但想法是自己的。为此感到苦恼而就诊。患者存在的主要症状是
雷诺数物理意义表示()。
河北省某个县里有个小孩家里很贫穷,边照顾父母边上学,对此谈谈你的看法。
甲为杀死乙而向乙射击,第一枪未打中,在其能继续向乙开枪射击的情况下,甲停止了射击。甲的行为属()。
在大型企业的数据库应用系统中,联机事务处理(OLTP)和联机分析处理(OLAP)是常见的数据管理与数据分析形式。关于OIXP和OIAP,一般情况下,下列说法正确的是()。
近年来,随着中国经济高速发展,外国人在中国工作的机会大幅增加。2012年,有24.64万外国求职者在中国注册(register),这一人数还在迅猛增长。英语教师是外国人在中国工作的一个重要岗位。此外,中国在销售、工程(engineering)和管理等领域对
最新回复
(
0
)