自定义函数返回值问题

来源:百度知道 编辑:UC知道 时间:2024/05/25 14:45:34
/*本题根据输入半径,求周长及面积,r代表半径,l代表周长,s代表面积*/
#include <stdio.h>
float round_l();
float round_s();
void main()
{
float r,l,s;
printf("请输入半径:");
scanf("%f",&r);
l=round_l(r);
printf("周长:%f",l);
s=round_s(r);
printf("面积:%f",s);
}
float round_l(float r)
{
float l,pi=3.14;
l=pi*2*r;
return l;
}
float round_s(float r)
{
float s,pi=3.14;
s=pi*r*r;
return s;
}
/*小弟看了多遍,不知道哪里错了,还希望各位大侠指点迷津!谢谢了!*/

#include <stdio.h>
float round_l(float); //声明函数时候没有写型参类型,型参可以不写,类型一定要的。
float round_s(float); //这里也一样
void main()
{
float r,l,s;
printf("请输入半径:");
scanf("%f",&r);
l=round_l(r);
printf("周长:%f",l);
s=round_s(r);
printf("面积:%f",s);
}
float round_l(float r)
{
float l,pi=3.14;
l=pi*2*r;
return l;
}
float round_s(float r)
{
float s,pi=3.14;
s=pi*r*r;
return s;
}

将float round_l()-->float round_l(float)
float round_s()-->float round_s(float)
c教程中写到函数声明时,只声明函数名和函数类型,而不检查参数类型和参数个数。
但是c++教程中对函数声明时,除声明函数名和函数类型,还要声明参数类型。这一点和c中不同。
将float round_l()-->float round_l(float)
float round_s()-->float round_s(float)改过后,经本人调试运行已经成功。
给点建议:书本需认真看,尤其是一些细节方面。像这个问题,如果你仔细看书的话,应该可以解决。

你定义的函数和函数实现不一致,你定义的两个函数是没有参数的,而下面的却有参数。

#include <stdio.h>
float rou