目的:检查用户输入()
如果用户输入b
是float
打印张数floor(b), round(b), ceil(b)
。
其他打印scanf error: (%d)\n
。
这里是我的代码: `
#include <stdio.h>
#include <math.h>
int main(void) {
float b;
printf("Eneter a float number");
int a=0;
a=5;
a=scanf("%d", &b);
if (a=0)
{
printf("scanf error: (%d)\n",a);
}
else
{
printf("%g %g %g",floor(b), round(b), ceil(b));
}
return 0
}
也许读这可能有助于 - [man scanf](https://linux.die.net/man/3/scanf) –
您不能使用“%d”作为浮点数。 – stark
@EdHeal:也可以用'-Wall'编译(或者等价的,取决于编译器)。 GCC'-Wall'会挑出'a = 0'和'%d'错误。 –