C 屏幕上显示的输出与原始结果不匹配
我是C语言的初学者 我在下面的代码中遇到了一些问题:- 代码 输出应该是4.347,但在这里,输出是4.000000C 屏幕上显示的输出与原始结果不匹配,c,integer,output,printf,C,Integer,Output,Printf,我是C语言的初学者 我在下面的代码中遇到了一些问题:- 代码 输出应该是4.347,但在这里,输出是4.000000 我应该怎么做才能得到4.347而不是4.000000?'b'是int类型的,因此它将只存储4,并且由于您在打印中使用float,它将值4显示为4.000000。将b的数据类型更改为浮点或双精度 int a=7,b; 应改为 int a=7;float b; 您需要将int类型更改为double类型,它可以包含十进制数 int main() { double a=7 ,
我应该怎么做才能得到4.347而不是4.000000?'b'是int类型的,因此它将只存储4,并且由于您在打印中使用float,它将值4显示为4.000000。将b的数据类型更改为浮点或双精度
int a=7,b;
应改为
int a=7;float b;
您需要将int类型更改为double类型,它可以包含十进制数
int main()
{
double a=7 , b;
b = a*0.621;
printf("%f",(b));
return 0;
}
输出:4.34700不要添加不相关的标签和相关代码的图像。将乘法结果分配给b,b是int类型,因此它会被截断。铸造b后使其浮动无法恢复部分。它必须是浮动b;对不起,我犯了错误。实际上,这是我第一次遇到堆栈溢出,这就是为什么我不知道发布问题的规则。我尽力编辑我的问题并使其正确。我再次为我的错误向你们道歉感谢你们花时间解决我的疑问。感谢你们花时间解决我的疑问。如果我的回答对你们有帮助,请向社区确认。
int main()
{
double a=7 , b;
b = a*0.621;
printf("%f",(b));
return 0;
}