首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll.C中函数fun的功能是:计算函数(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。其中x和y的值不等,z和y的值不等。 例如,当X的值为9、y的值为11、Z的值为15时,函数值为-3.50。 请改正程序
给定程序MODll.C中函数fun的功能是:计算函数(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。其中x和y的值不等,z和y的值不等。 例如,当X的值为9、y的值为11、Z的值为15时,函数值为-3.50。 请改正程序
admin
2015-06-08
71
问题
给定程序MODll.C中函数fun的功能是:计算函数(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。其中x和y的值不等,z和y的值不等。
例如,当X的值为9、y的值为11、Z的值为15时,函数值为-3.50。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include
#include
#include
/**********found***********/
#define FU(m,n) (m/n)
float fun(float a,float b,float c)
{ float value;
value=FU(a+b,a—b)+FU(c+b,c—b);
/**********found***********/
Return(Value);
}
main()
{ float x,y,Z,sum;
printf(“Input x y Z:”);
scanf(“%f%f%f”,&x,&y,&z);
printf(“x=%f,y=%f,z=%f\n”,x,y,Z);
if(x==y || y==Z)(Printf(“Data error!\n”);exit(0);)
sum=fun(X,y,z);
printf(“The result iS:%5.2 f\n”,
sum);
}
选项
答案
(1)#define Fu(m,n) ((m)/(n)) (2)return (value);
解析
本题中函数的功能是计算题干中给出的公式值。本题的解题过程是利用了定义的宏FU,实现了函数中给出的公式的求值。
[解题思路]
(1)函数fun两次调用宏FU来计算“value=FU(a+b,a-b)+Fu(c+b,c-b);”。检查宏的定义是否正确,可以用实参代入宏进行展开:(a+b/a-b),由此看到,FU(a+b,a-b)进行的计算不是(a+b)/(a_b),而是(a+b/a_b),因为“/”的优先级高于“+”或“.”,所以要使用括号限定计算优先顺序。所以将“#define FU(m,n)(m/n)”改为“#define FU(m,n)((m)/(n))”。
(2)第二个标识下返回语句的关键字有误。所以,第二个标识下“Returll(value);”应该改为“return(value);”,C语言中没有“Return”这个关键字。
转载请注明原文地址:https://kaotiyun.com/show/ViJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
当执行下面的程序时,如果输入ABC,则输出的结果是()。#include<Stdlib.h>main(){charss[]="1,2,3,4,5";gets(ss);strcat(ss,"6789");pri
若有以下定义和语句:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a则不能表示a数组元素的表达式是()。
C语言中,函数值类型的定义可以默认,此时函数值的隐含类型是()。
观察题目要求,可以知道以下几点:①for循环的结束条件应当是:str[i]已是字符串的最后一个字符;②str[i]代表字符串str中的第i+1个字符;③整形变量num的值是要记录的单词的个数。C语言中规定字符串的最后一个字符是一个隐含的字符串结束符
下面程序的输出结果是【】。charb[]="ABCD";main(){charb[30];strcpy(&b[0],"GH");strcpy(&b[1],"GH”);strcp
下面程序运行后的输出结果是______。structabc{inta,b,c;}main(){structabcs[2]={{1,2,3},{4,5,6}};intt=-s[0].a
下述关于C语言文件的操作的结论中,正确的是______。
假设在turboc2.0采用small模式编译如下程序main(){chara[4]={’a’,’b’};char*b="abc";printf("%d,%d",sizeof(A),sizeof(B));
有以下程序:int*f(int*x,int*y){if(*x<*y)returnx;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=
以下程序的输出结果是_______。main(){intw=5;fun(w);printf("\n");}fun(intk){if(k>0)fun(k-1);printf("%d",k);
随机试题
关于浇筑水下混凝土用压浆法施工的说法,正确的有()。
不会发生睑内翻的是
女,45岁。2周前发热、咳嗽、咳黄痰、胸闷、胸痛,经抗感染治疗好转。现再次高热,咳嗽无痰,感胸闷。查体:T38.5℃,P115次/分,R25次/分,气管明显左移,右肺语颤减弱,叩诊呈实音,呼吸音消失,血WBC22×109/L,N0.89。该患者首
若将中药中所含生物碱盐和游离生物碱都提取出来,应选用的溶剂是
下列关于城市非正规就业的表述,正确的是()。
若年名义利率为12%,一年计息4次,则计息周期利率为()。
扩张型货币政策的主要功能是()。[2007年真题]
体现前运算阶段儿童认知特点的活动是()。
【2015年济南市】教育上的外铄论认为,人的身心发展取决于外在环境的影响。持这种观点的教育思想家是()。
“感觉到了东西,我们不能立刻理解它,只有理解了的东两,我们才能更深刻地感觉它”,这一观点说明
最新回复
(
0
)