首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
以下程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序。 #include void f(int b[], int n, int flag) { int i,j,t; for (i=0; i<n-1; i
以下程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序。 #include void f(int b[], int n, int flag) { int i,j,t; for (i=0; i<n-1; i
admin
2020-05-19
74
问题
以下程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序。
#include
void f(int b[], int n, int flag)
{
int i,j,t;
for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
if (flag ? b
>b[j] : b
{ t=b
; b
=b[j]; b[j]=t; }
}
main()
{
int a[10]={5,4,3,2,1,6,7,8,9,10}, i;
f(&a[2], 5, 0);
f(a, 5, 1);
for (i=0; i<10; i++)
printf("%d,", a
);
}
程序运行后的输出结果是
选项
A、1,2,3,4,5,6,7,8,9,10,
B、3,4,5,6,7,2,1,8,9,10,
C、5,4,3,2,1,6,7,8,9,10,
D、10,9,8,7,6,5,4,3,2,1,
答案
B
解析
本题重点考察函数的参数传递,函数的参数传递分为传值和传地址两种情况。本题就是结合数组考查参数传递的情形。解析:函数f完成的功能是对数据进行排序,语句f(&a[2],5,0)的作用是对从a[2]开始的5个元素进行从大到小排序。注意:这里传递的是地址&a[2],所以排序操作可看作是直接对数组a操作,执行后的结果为5,4,7,6,3,2,1, 8,9,10。语句f(a,5,1)对数组a的前5个元素从小到大排序,排序后数组为:3,4,5,6,7,2,1, 8,9,10。因此B选项正确。
转载请注明原文地址:https://kaotiyun.com/show/jwCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列叙述中正确的是()。
以下程序的输出结果是()。for(i=0;i<4;i++,i++)for(k=1;k<3;k++);printf(’’*’’);
以下程序的输出结果是()。#includeint*f(int*s,int*t){intk;if(*s<*t){k=*s;*s=*t;*t=k;}returns;}main(){inti=3,j=5,*p=&i,*q=&j,*r;r=
关于函数参数的叙述中正确的是()。
下列选项中能正确定义数组的语句是()。
给定程序中,函数fun的功能是将参数给定的字符串、整数、浮点数写到文本文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数atoi和atof将字符串转换成相应的整数、浮点数,然后将其显示在屏幕上。请在程序的下划线处填入正确的内容并把下划线删
关系表中的每一行记录称为一个()。
数据字典(DD)所定义的对象都包含于
深度为7的二叉树共有127个结点,则下列说法中错误的是()。
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。此处有一个很奇怪的车牌号,它是一个4位十进制数,是某一个数的平方数,且这4个数字从右至左一个比一个大。程序的功能是把这个车牌号找出来,部分程序已
随机试题
溶血性黄疸下列哪一项不存在()
既往史不应包括
防渗墙墙体材料中属于柔性材料的有()。
外籍个人查理在我国取得的下列收入中,可享受免税的有()。
2016年7月1日,某企业销售商品时随同商品出售的不单独计价包装物的计划成本为60000元,材料成本差异率为一5%,下列各项中,关于该包装物会计处理正确的是()。
儿童观
雾霾:污染:生病
已知等腰三角形的两边长分别为6cm和3cm,则该等腰三角形的周长是().
Thewoman’sdaughteris______.Mariawantsto______firstwhenshegetshomeearly.
Completethetablebelow.WriteNOMORETHANTHREEWORDSforeachanswer.
最新回复
(
0
)