首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.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。 请改正程序中的错误,
给定程序MODI1.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
2018-09-27
142
问题
给定程序MODI1.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函数,不得增行或删行,也不得更改程序的结构。
1 #include<stdio.h>
2 #include<math.h>
3 #include<stdlib.h>
4 /**********found**********/
5 #define FU(m,n) (m/n)
6 float fun(float a,float b,float c)
7 { float value;
8 value=FU(a+b,a-b)+FU(c+b,c-b);
9 /**********found**********/
10 Return(value);
11 }
12 main()
13 { float c,y,z,sum;
14 printf(’’Input x y z:’’);
15 scanf(’’%f%f%f’’,&x,&y,&z);
16 printf(’’x=%f,y=%f,z=%f\n’’,x,y,z);
17 if(x==y|| y==z)(printf(’’Data error!\n’’);exit(0);}
18 sum=fun(x,y,z);
19 printf(’’The result is:%5.2f\n’’,sum);
20 }
选项
答案
(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)”,因为“/”的优先级高于“+”或“-”,所以,要使用括号限定计算优先顺序。所以将“#defineFU(m,n)(m/n)”改为“#define FU(m,n)((m)/(n))”。
(2)第二个标识下返回语句的关键字有误。所以,第二个标识下“Return(value);”应该改为“return(value);”,C语言中没有“Return”这个关键字。
转载请注明原文地址:https://kaotiyun.com/show/48xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序段的运行结果是______。charstr[]="ABCD",*p=str;printf("%d\n",*(p+3));
有以下程序 main() {char s[]={"aeiou"},*ps; ps=s; printf("%c\n",*ps+4); } 程序运行后输出的结果是______。
若输入000051,下列程序的运行结果为______。main(){unsignedinta;scanf("%o",&a);printf("%o\n",getbits(a));}getbits(value)unsignedint
有以下程序:#include<stdio.h>main(){printf("%d\n",NULL);}程序运行后的输出结果是()。
有以下程序#include.<string.h>main(){char*p="abcde\ofghjik\0";printf("%d\n",strlen(p));}程序运行后的输出结果是
有如下程序: main() {char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0; for(i=0;i<2;i++)p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]!=’
下面程序输出的结果是______。main(){inti=5,j=9,z;x=(i==j?i:(j=7));printf(:\n%d,%d",i,j);}
若有下列说明和语句,则对结构体变量st中成员i的引用方式不正确的是()。Structstu{inti;intname;}st,*p;p=&st;
在表示C语言的整型变量时,表示“无符号整型”的符号是()
数据库系统中实现各种数据管理功能的核心软件称为【】。
随机试题
我国《公司法》所确认的公司主要有()
Thetwopartieshave______anagreementonthedateoftalk.
男性,20岁,周身水肿半个月近日来出现呼吸困难,少尿。检查:BP170/120mmHg,全身高度水肿,并伴有右侧胸腔及腹腔积液,在外院诊断肾病综合征。泼尼松减量的标准是什么
患者,男性,30岁。右下智牙近中位阻生,反复发生冠周炎,现无明显症状要求拔除。右下第二磨牙远中探诊可疑龋坏。出现拔除右下阻生智牙3天后,拔牙窝出现持续性疼痛并向耳颞部放散,检查见拔牙窝内空虚相应的治疗应为()
A、成型材料B、增塑剂C、遮光剂D、防腐剂E、增稠剂二氧化钛在空胶囊组成中作为
净现值法与现值指数法的共同之处在于()。
()是我国社会主义社会的重要特征,并为社会主义现代化建设提供了强大的精神动力、智力支持和思想保证。
以下选项中,不合法的VisualBasic的变量名是()。
A、ThistypeofTVisproducedlately.B、TheconversationtakesplaceatacompanywhichproducesTVsets.C、TheTVsetisexpens
Accordingtothewriter,thetopkillersinChinaare______.______wasthetoppreventablecontributingfactortothedeaths.
最新回复
(
0
)