首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序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
2017-07-27
29
问题
给定程序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.1f\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://jikaoti.com/ti/1Mi0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
定义无符号整数类为UInt,下面可以作为类UInt实例化值的是
如果需要打开一个已经存在的非空文件“FILE”并进行修改,正确的语句是()。
定义结构体数组structstu{intnum;charname[20];}x[5]={1,"ZHAO",2,"QIAN",3,"SUN",4,"LEE",5,"ZHOU"};for(i=1;i<5;i++)
若函数调用时的实参为变量,以下关于函数形参和实参的叙述中正确的是()。
在结构化方法中,用数据流程图(DFd)作为描述工具的软件开发阶段是()。
若定义函数int*func(),则函数func的返回值为()。
定义如下变量和数组:inti,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是()。for(i=0;i<3;i++)printf("%d",x[i][2-i]);
下列选项中,不属于数据库管理的是()。
在面向对象方法中,类的实例称为()。
已知二叉树后序遍历序列是CDABE,中序遍历序列是CADEB,它的前序遍历序列是()。
随机试题
在药品调剂过程总的步骤分为
按规定方法进行崩解时限检查时,下列片剂(或胶囊)的崩解时限分别为A.15rainB.30rainC.1hD.预先用盐酸(9→1000)检查2h后,1hE.5min
某公路工程项目,建设单位通过招标与A施工单位签订了施工承包合同。建设单位又委托甲监理单位实施施工阶段的监理工作,并签订委托监理合同。1.在签订的监理合同中有如下内容:(1)监理单位是本工程的最高管理者;(2)监理单位应维护建设单位的
依据《安全生产违法行为行政处罚办法》的规定,生产经营单位的决策机构、主要负责人、个人经营的投资人不依照规定保证安全生产所必需的资金投入,致使生产经营单位不具备安全生产条件的,责令()。
广播电视发射塔安装前,要做的主要检查内容包括()。
投标报价的组成中,属于间接成本的有()。
关于法律责任的说法,正确的是()。
若有以下程序段doublex=5.16894;printf("%f\n",(int)(x*1000+0.5)/(double)1000);则程序段的输出结果是
Threepeoplewerewalkingalongastreet,firstwasabigmanthenawoman,andthenanoldman.Thefirsttwopassed.Theoldm
Peopleplayitintheopenair.Peoplehavethemasapartoftheirmeal.
最新回复
(
0
)