gpt4 book ai didi

c - C中的 float 学获取随机数

转载 作者:行者123 更新时间:2023-11-30 18:22:16 25 4
gpt4 key购买 nike

我正在做 C Primer Plus 的练习,其中涉及使用 float ,但我无法得到 float 的结果。我让它在输入中读取良好(据我所知),但问题必须出在公式行中。谁能告诉我我做错了什么?

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
float inp1, inp2;
float result;

result = (inp1 - inp2) / (inp1 * inp2); /* formula */

printf("enter two values\n");
scanf("%f %f", &inp1, &inp2);

printf("(%.3f - %.3f) / (%.3f * %.3f)\n", inp1, inp2, inp1, inp2);
printf("%f\n", result);
}

输出给出一些随机数(我不知道它叫什么),例如输入1.255和1.023,我得到的输出为2656044210243861500000000000000000000.000000或类似的东西。倒数第二个 printf 正确显示输入。我做错了什么?

我已经尝试过这个,但我不太明白强制转换运算符是如何工作的。

result = ((float)inp1 - (float)inp2) / ((float)inp1 * (float)inp2); //formula

result = (float)(inp1 - inp2) / (inp1 * inp2);

最佳答案

result = (inp1 - inp2) / (inp1 * inp2); /* formula */

printf("enter two values\n");
scanf("%f %f", &inp1, &inp2);

那么,将 scanf 调用放在 result = ...; 赋值语句之前怎么样?

关于c - C中的 float 学获取随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26066481/

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