首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。 例如,输入的数为:55 12 34,输出结果应当是:a=55.0,b=34.0,c=12.0。 请改正程序中的错误,使它
给定程序MODI1.C中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。 例如,输入的数为:55 12 34,输出结果应当是:a=55.0,b=34.0,c=12.0。 请改正程序中的错误,使它
admin
2018-09-27
22
问题
给定程序MODI1.C中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。
例如,输入的数为:55 12 34,输出结果应当是:a=55.0,b=34.0,c=12.0。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
1 #include<stdio.h>
2 void fun(float *a,float *b,float*c)
3 {
4 /**********found**********/
5 float *k;
6 if(*a<*b)
7 { k=*a;*a=*b;*b=k;}
8 /**********found**********/
9 if(*a>*c)
10 { k=*c;*c=*a;*a=k;}
11 if(*b<*c)
12 { k=*b;*b=*c;*c=k;}
13 }
14 main()
15 { float a,b,c;
16 printf(’’Input a b c:’’);scanf(’’%f%f%f’’,&a,&b,&c);
17 printf(’’a=%4.1f,b=%4.1f,c=%4.1 f\n\n’’,a,b,c);
18 fun(&a,&b,&c);
19 printf(’’a=%4.1f,b=%4.1f,c=%4.1f\n\n’’,a,b,c);
20 }
选项
答案
(1)float k; (2)if(*a<*c)
解析
函数对三个数进行两两比较,实现判断。
(1)第一个标识下的变量k是在比较过程中,临时存放数据的变量,因此k不应是指针,所以将“float*k;”改为“float k;”。
(2)分析函数中第一个if语句,如果主函数中a<b,则对调,把大数放在a中;分析第二个if语句,如果主函数中的a>c,则进行对调,又把大数放在c中,这样的逻辑显然是混乱的。因此,第二个标识下“if(*a>*c)”应该改为“if(*a<*c)”。
转载请注明原文地址:https://kaotiyun.com/show/4Axp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下函数用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。请填空。#include<conio.h>#include<stdio.h>intfun(int*s,intt,int*k){inti;
以下程序运行后的输出结果是_________。intfun(inta){intb=0;staticintc=3;b++:c++;return(a+b+c);}main(){inti
有以下程序:main(){intx=0,y=5,z=3;while(z-->0&&++x<5)y=y-1;printf("%d,%d,%d\n",x,y,z);}程序执行后的输出结果
下面程序的功能是:计算1~10之间的奇数之和及偶数之和,空白处应填______。 main() {int a,b,c,i; a=c=0; for(i=0;i<=10;i+=2) {a+=i;______;) printf("偶数之和=%d\n",a); p
下列程序段中循环体的执行次数是______。 int x=-12; while (x=0) x=x+1;
有以下程序#include.<string.h>main(){char*p="abcde\ofghjik\0";printf("%d\n",strlen(p));}程序运行后的输出结果是
下面定义的结构体类型包含3个成员,其中成员变量x用来存入整型数据,成员变量y用来存入实型数据,成员变量next是指向自身结构体的指针。请将定义补充完整。structstu{intx;【】【】next;}
两次运行下面的程序后,如果从键盘上分别输入7和3,则输出结果是______。main(){intx;scanf("%d",&x);if(++x>5)printf("%d",x);elsep
下列程序段是从键盘输入的字符中统计小写字母的个数,用换行符结束循环。请填空。intn=0,c;c=getchar();while(c!=’\n’){if(______)n++;}
随机试题
十二指肠溃疡手术治疗时,可供选择的术式包括
女,34岁,曾怀孕5次,双胎早产1次,人流2次,足月产1次,有2子1女存活,正确描述方法是
患者女性,29岁,孕34周,规律性腹痛3小时,无阴道流水及流血,阴道检查宫口未开,宫颈管未消失。此时,最恰当的处理是
疼痛不剧烈,可以忍受,绵绵不休。是
某些纺织厂、印染厂通风系统中含有大量腐蚀性气体和大量水蒸气,宜用()制作通风管道。
根据《行政处罚法》,可以从轻或者减轻处罚的情形有()。
与增量预算编制方法相比,零基预算编制方法的优点有()。
社会主义道德建设以集体主义为原则的决定性因素包括
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面属于开发阶段任务的是
XiaoZhang______inthatfactoryforfiveyears.
最新回复
(
0
)