使用 float 和 printf 的 C 有问题
Having issues with C using float and printf
我正在尝试 运行 C 中的一些基本代码来声明 2 个浮点变量,然后将它们相除并将该值放入第三个变量中。在此之后我打印所有 3.
#include <stdio.h>
int main ()
{
/* variable definition: */
float a, b, c;
/* variable initialization */
a = 1.2;
b = 2.7;
c = a / b;
printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c);
return 0;
}
我正在使用在线编译器 "www.ideone.com" 编译和 运行 代码,这是我得到的结果:
Success time: 0 memory: 2156 signal:0
浮点数 (a,b) 和商 (c) 是:1073741824,1072902963,-1610612736
任何人都可以看看我是否在代码中犯了错误?它适用于 class,并且在我从 int 更改为 float 之前,每一步的方向都运行良好。
您想打印浮点数,因此更改为:
printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c);
对此:
printf("Floats (a,b) and quotient (c) are : %f,%f,%f \n", a,b,c);
有关更多信息,请查看 ref。
%d
不是浮点数的正确转换,请改用 %f
变化:
printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c);
至:
printf("Floats (a,b) and quotient (c) are : %f,%f,%f \n", a,b,c);
你应该没问题。
我正在尝试 运行 C 中的一些基本代码来声明 2 个浮点变量,然后将它们相除并将该值放入第三个变量中。在此之后我打印所有 3.
#include <stdio.h>
int main ()
{
/* variable definition: */
float a, b, c;
/* variable initialization */
a = 1.2;
b = 2.7;
c = a / b;
printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c);
return 0;
}
我正在使用在线编译器 "www.ideone.com" 编译和 运行 代码,这是我得到的结果:
Success time: 0 memory: 2156 signal:0
浮点数 (a,b) 和商 (c) 是:1073741824,1072902963,-1610612736
任何人都可以看看我是否在代码中犯了错误?它适用于 class,并且在我从 int 更改为 float 之前,每一步的方向都运行良好。
您想打印浮点数,因此更改为:
printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c);
对此:
printf("Floats (a,b) and quotient (c) are : %f,%f,%f \n", a,b,c);
有关更多信息,请查看 ref。
%d
不是浮点数的正确转换,请改用 %f
变化:
printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c);
至:
printf("Floats (a,b) and quotient (c) are : %f,%f,%f \n", a,b,c);
你应该没问题。