首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序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
2021-06-15
43
问题
给定程序MODI1.C中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。
例如,输入的数为:55 12 34,输出结果应当是:a=55.0,b=34。0,c=12.0。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include <stdio.h>
void fun(float *a,float *b,float *c)
{
/**********found**********/
float *k;
if(*a<*b)
{ k=*a;*a=*b;*b=k;)
/**********found**********/
i f(*a>*c)
{ k=*c; *c=*a; *a=k;)
if(*b<*c)
{ k=*b;*b=*c;*c=k;)
}
main()
{ float a,b,c;
printf("Input a b c:");scanf ("%f%f%f",&a,&b,&c);
printf("a = %4.1f,b = %4.1f,c = %4.1f\n\n",a,b,c);
fun(&a,&b,&c);
printf("a = %4.1f, b = %4.1f, c = %4.1f\n\n",a,b,c);
}
选项
答案
(1)float k; (2)i f(*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/bctp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序段完全正确的是
有以下程序voidfun1(char*p)main(){char*q;{chara[]={"Program"},*p;q=p;p=&a[3];fun1(p);printf("%s\n",a);
设有以下函数:yoidfun(intn,char*s){……}则下面对函数指针的定义和赋值均正确的是
以下关于逻辑运算符两侧运算对象的叙述中正确的是
下列各组排序法中,最坏情况下比较次数相同的是()。
有三个关系R,S和T如下图所示:则由关系R和S得到关系T的运算是
若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误的程序是
下面不属于软件需求分析阶段主要工作的是
算法的时间复杂度是指()。
检查软件产品是否符合需求定义的过程称为()。
随机试题
细菌性肝脓肿,哪项是正确的
十二经脉中阴经与阴经的交接部位是
有关谵妄的治疗原则下列哪种说法不正确
下列不属于细脉主病的是
关于拆线描述,正确的是
下列情形中,可以借阅一级档案的有()。
下列关于反义词的说法,错误的是()。
一个经常违纪的学生被调到一个风气良好的班级后,在周围学生严格守纪行为的影响下,其违纪行为暂时很少表现出来。这体现了通过榜样示范学习的
要素主义的主要代表人物是()
Manypeoplebelievetheyshoulddrinkeightglassesofwateraday.Thatis【C1】______theyhavebeentoldalltheirlife.【C2】____
最新回复
(
0
)