gpt4 book ai didi

c++ - 用户定义函数的返回值有问题

转载 作者:行者123 更新时间:2023-11-30 00:53:56 25 4
gpt4 key购买 nike

我正在做一个简单的勾股函数用户输入两个数字,两个数字都被发送到一个名为 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 函数。 (我进行了测试以查看错误出在哪里,因此在 hypo 函数中进行了打印筛选。)

我想明白这一点。

我很确定我的 synax 有误,或者有一些我还没有读过的东西超出了我的理解,但是在翻阅书籍和检查 youtube 视频一个小时后,我不明白为什么会这样'工作。

编辑:

谢谢大家的快速回复!我把它改成双倍的,(我也意识到我在这个过程中的错误 xD )现在它就像一个魅力。很高兴你们都这么快回答,我一定会转发:)

最佳答案

您需要将返回类型更改为 double :

double 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;
}

关于c++ - 用户定义函数的返回值有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15235113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com