相关疑难解决方法(0)

使用%f打印整数变量

以下c程序的输出是:0.000000输出后面是否有逻辑或者是编译器依赖的答案还是我只是得到垃圾值?

#include<stdio.h>

int main()
{
    int x=10;
    printf("%f", x);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

PS: - 我知道尝试使用%f打印整数值是愚蠢的.我只是从理论的角度来问这个问题.

c

7
推荐指数
2
解决办法
7393
查看次数

奇怪的printf输出

我执行了以下代码

#include <stdio.h>

int main()
{
    printf("%f\n", 9/5);
}
Run Code Online (Sandbox Code Playgroud)

输出: 0.000000

为什么不1呢?

如果我写 printf("%f %f %d %d\n", (float)9/5, 4, sizeof(float), sizeof(int));

那么输出就是 1.800000 0.000000 4 59

为什么不 1.800000 4 4 4

在我的机器上sizeof (float)4

提前致谢

c floating-point printf

2
推荐指数
1
解决办法
4832
查看次数

为什么输出0.0000?

我想知道为什么这个程序的输出是0.0000:

{
    int a = 65;
    char c = (char)a;
    int m = 3.0/2;
    printf("%f\n", 5 / 2);
    return (0);
}
Run Code Online (Sandbox Code Playgroud)

c

1
推荐指数
1
解决办法
8545
查看次数

printf()函数异常

我在处理整数和浮点数时看到打印功能异常。

float y = 9/5;
printf("%f", y);

printf("%f", 9/5);
Run Code Online (Sandbox Code Playgroud)

第一个打印语句输出1.000000,可以接受,而其他输出0.000000。为什么两种情况下的输出都不同?

c floating-point printf

-2
推荐指数
1
解决办法
84
查看次数

标签 统计

c ×4

floating-point ×2

printf ×2