首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun()的功能是:求出数组中最大数和次最大数,并把最大数和b[0]中的数对调、次最大数和b[1]中的数对调。 请修改程序中的错误,得出正确的结果。 注意:不要改动main()函数,不能增行或删行,也不能更改程序的结构。
下列给定程序中,函数fun()的功能是:求出数组中最大数和次最大数,并把最大数和b[0]中的数对调、次最大数和b[1]中的数对调。 请修改程序中的错误,得出正确的结果。 注意:不要改动main()函数,不能增行或删行,也不能更改程序的结构。
admin
2013-03-25
38
问题
下列给定程序中,函数fun()的功能是:求出数组中最大数和次最大数,并把最大数和b[0]中的数对调、次最大数和b[1]中的数对调。
请修改程序中的错误,得出正确的结果。
注意:不要改动main()函数,不能增行或删行,也不能更改程序的结构。
试题程序:
#include
#include
#define N 10
//****error****
void fun()
{
int i,m,t,j;
for(i=0;i<2;i++)
{
//****error****
m=0;
for(j=i+1;j
if(b[j]>b[m])
m=j;
t=b
;
b
=b[m];
h[m]=t:
}
}
void main()
{
int a[N]={5,12,9,7,10),n=5,i;
for(i=0;i
printf("%d",a
);
printf("\n");
fun(a,n);
for(i=0;i
printf("%d",a
);
printf("\n");
}
选项
答案
1.错误:void fun() 正确:void fun(int*b,int n) 2.错误:m=j; 正确:m=i;
解析
本题中函数的功能是求出数组中最大数和次最大数。解题思路是首先求出数组中最大数和次最大数,然后将最大数和次最大数分别放到数组的第一位和第二位。
第一个错误标识下“void fun(int * b,int n);”函数的定义语法有误,根据C语言语法函数定义后面不应该加“;”,所以“void fun(int * b,int n);”应该改为“void fun(int * b,int n)”。
第二个标识符下for循环逐个对m个数据进行选择判断,原题中“m=0;”语句将m值设置为0,在循环中m的值
转载请注明原文地址:https://kaotiyun.com/show/MXJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后的输出结果是【】。main(){intx=0210;printf("%X\n",x);}
函数fseek(pf,OL,SEEK_END)中的SEEK_END代表的起始点是
在位运算中,操作数左移一位,其结果相当于
下面程序段的运行结果是char*p="abcdefgh";p+=3;printf("%d\n",strlen(strcpy(p,"ABCD")));
若有以下定义和语句,则对a数组元素地址的正确引用为inta[2][3],(*p)[3];p=a;
下面函数调用语句含有实参的个数为func((exp1,exp2),(exp3,exp4,exp5));
在数据结构中,从逻辑上可以把数据结构分为______。
若有如下程序:main(){intx=5,y,*t;t=&x;y=++(*t);printf("%d,%d",x,y);}则程序执行后的x值为【】,y的值为【】。
以下程序段给数组所有的元素输入数据,请选择正确答案填入。()#inelude<stdio.h>main(){inta[10],i=0;while(i<10)scanf("%d",______);
下述函数通过递归方法将字符串倒置,使用时需要指定字符数组的首地址、起始下标和终止下标。请填空:#include<stdio.h>voidfun(char*s,intlow,inthigh){if(【】)
随机试题
阈电位是指
以下()情形的桥梁,应进行荷载试验检测。
招标过程争议主要包括的内容有()。
下列属于国际货运代理作用的是()。
下列各项中,产生应纳税暂时性差异的有()。
如果有限合伙企业依法被宣告破产,全体合伙人对合伙企业债务承担无限连带责任。()
下列旅游区标志中,表述不正确的是()。
某人动用资金30000元,按5:4的比例分别买入甲、乙两种股票,第五天全部抛出,其投资的收益率可以算出(税费成本不计).(1)甲种股票升值20%(2)乙种股票下跌15%
关系数据库的体系结构中,与存储文件相关的是()。
Newresearchfindsthatnearly5,200kidsaretreatedinanemergencydepartmenteachyearafterfallingfromawindow.That’s1
最新回复
(
0
)