早教吧作业答案频道 -->其他-->
关于C怨言函数的问题1.当被调函数的函数定义出现在主调函数之前时,在主调函数中可以不对被调函数作说明而直接调用.例5-5省略被调函数说明.floatadd(floatx,floaty){floatz;z=x+y;return(z);}
题目详情
关于C怨言函数的问题1.当被调函数的函数定义出现在主调函数之前时,在主调函数中可以不对被调函数作说明而直接调用. 例5-5 省略被调函数说明. float add(float x,float y) { float z; z=x+y; return(z); } main() { float a,b; scanf("%f,%f,"&a,&b); printf("sum is %f",add(a,b)); } 分析:该程序中,函数add的定义放在main函数之前,因此可在main函数中省去对add函数的函数说明float add(float x,float y).例5-2也属此种情况. 4.如果被调函数的返回值是整型或字符型时,可以不对被调函数作说明而直接调用。这时系统自动将被调函数返回值按整型处理。例5-1中,被调函数max返回值是整型,在主函数中可以省略说明。但是,当一个函数返回值为其他类型而在程序中又没有事先说明,则结果就会出错。 例5-7 被调函数返回值类型不是整型。 float s(int r) { return 3.14*r*r; } main() { int r,area; scanf("%d",&r); printf("%d\n",s(r)); } 程序运行结果: 2 -31457 分析:很明显程序结果不正确,但该程序在编译过程中并未报错。这是因为编译过程中系统无法对参数个数和类型进行检查,而在执行过程中出现了类型不匹配。因此,为了防止一些不必要的错误,也使程序更加清晰,建议在编写程序时都加上函数的原型说明。 大家好,这是从书上抄下来的,有点不懂,书中说如果被调函数的返回值类型是整型或者是字符型的话,可以不对被调函数作说明而直接调用。例5-5和例5-7都是省略了被调函数的说明而返回值也都不是整型和字符型,为什么例5-5没错而例5-7会出错。
▼优质解答
答案和解析
printf("sum is %f",add(a,b)); printf("%d\n",s(r)); 中的add(a,b)和s(r)这不是调用了吗?这也是一种调用的形式。 希望采纳。
看了关于C怨言函数的问题1.当被调...的网友还看了以下:
证明对正数x1,x2都有x1lnx1+x2lnx2>=(x1+x2)(ln(x1+x2)-ln2) 2020-05-17 …
阅读以下说明和流程图8-11,完成程序(n)处的语句写在对应栏内。 [说明] 对于数学上一个猜想:任 2020-05-26 …
用向量的方法证明:对实数a1,a2,b1,b2,有(a1b1+a2b2)^2≤(a1^2+a2^2 2020-07-09 …
试证明对函数Y=PX2+QX+R应用拉格朗日中值定理时所求得的点&总是位于区间的正中间? 2020-07-22 …
函数高手求救:对数函数y=log(a)X的问题y=log(a)X负数和0没有对数底数的限制:a>0 2020-07-30 …
小明跟爷爷聊天,爷爷对小明说:“当我的岁数是你爸爸现在的岁数时,你才5岁,小明对爷爷说,我的岁数是您 2020-11-06 …
小明跟爷爷聊天,爷爷对小明说:“当我的岁数是你爸现在的岁数时,你才5岁呢.”小明对爷爷说:“我的岁数 2020-11-06 …
小明跟爷爷聊天,爷爷对小明说:“当我的岁数是你爸现在的岁数时,你才5岁呢.”小明对爷爷说:“我的岁数 2020-11-06 …
小明对小梅说:“当我的岁数是你现在的岁数时,你才4岁.”小梅对小明说:“当我的岁数是的岁数...小明 2020-12-23 …
轴对称法求二次函数值域时的端点与对应的函数值的关系怎样理解用对称轴求二次函数的值域,当开口向下时,端 2021-01-22 …