gpt4 book ai didi

c - 我在 c 中使用 pow 和 sqrt 函数有问题吗?

转载 作者:行者123 更新时间:2023-11-30 20:58:38 25 4
gpt4 key购买 nike

shrt = r - sqrt(pow(x * 1.0, 2.0) + pow(y * 1.0, 2.0));

我使用此代码获取了 shrt = r - square root(x2+y2) 的结果。但我得到了错误的答案。我的代码有什么问题吗?当我打印shrt时,答案不正确!这是我的代码:

#include <stdio.h>
#include <math.h>

int main() {
int i, x, y, r;
double shrt, lng;
for (i = 0; i < 100; i++) {
scanf("%d %d %d", &x, &y, &r);
shrt = r - sqrt(pow(x * 1.0, 2.0) + pow(y * 1.0, 2.0));
lng = 2 * r - shrt;
printf("%.02lf %.02lf\n", shrt, lng);
}
return 0;
}

如果我运行代码并在此处输入作为第一个测试用例:0 0 100 。然后我得到输出 -3.00 -3.00 。但我想要输出 100.00 100.00

最佳答案

您的 scanf 失败

不使用它进行测试,您将得到正确的结果:

#include<stdio.h>
#include<math.h>

int main()
{
int i,x=0,y=0,r=100;
double shrt,lng;
for(i=0; i<100; i++)
{

shrt=r-sqrt(pow(x*1.0,2.0)+pow(y*1.0,2.0));
lng=2*r-shrt;
printf("%.02f %.02f\n",shrt,lng);
}


return 0;
}

https://ideone.com/VqdUVI

关于c - 我在 c 中使用 pow 和 sqrt 函数有问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51341268/

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