int decade;
float jeo;
PRINT("Enter Decade point =\r\n");
scanf("%d",&decade);
print_decimal(decade);
PRINT("\r\n");
jeo=(1/(1+decade));
PRINT("Decade point =");
print_decimal(jeo);//my function for showing floating point number.
PRINT("\r\n");

我已经在ARM控制器的IAR embedded workbench软件中编写了这段代码,但它没有给出准确的答案,有人能告诉我为什么吗??
“当我进入3。它给了我0个答案。

最佳答案

您只是使用integer进行计算,然后将其分配给float值。这将删除小数点后的数字。
试试这个:

jeo=(1.0/(1.0+decade));

10-08 15:14