我正在做一个简单的毕达哥拉斯函数用户输入两个数字,这两个数字都被运送到一个名为 Hypo 的用户定义函数中,hypo 应该返回一个值 C,这就是答案。
这是我的脚本。
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int hypo(double a, double b);
int main(void)
{
double one, two;
//user inputs two variables
scanf("%lf %lf", &one, &two );
printf("Your C number is: %.2lf\n", hypo(one, two));
system("PAUSE");
return 0;
}
/*-------------------------------------------------------------------------*/
int hypo(double a, double b)
{
double c;
c = sqrt((a*a)+(b*b));
printf("Currently, A = %.2lf, and B = %.2lf, C = %.2lf\n", a, b, c);
return c;
}
在我的电脑上,它一直工作到最后,Return c; 由于某种原因,它将值 0 返回给 Main 函数。(我测试了错误在哪里,因此在低函数中进行了打印筛选。)
我想明白这一点。
我很确定我的语法有误,或者有些我还没有读过的东西让我不知所措,但是在浏览书籍和检查 youtube 视频一个小时后,我不明白为什么这不起作用.
编辑:
谢谢大家的快速回复!我把它改成了双倍,(也意识到我在这个过程中的错误 xD )现在它就像一个魅力。很高兴你们都回答得这么快,我一定会转发的:)