C语言为什么总是显示0.00000?

(3)的圆圈4

程序中的第五行循环条件写错了,正确的循环条件应该是s<=100;因,所以导致1次循环也没有执行,所以就输出显示0.000000了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2021-11-07
错误1:你的n是整数,所以输入的时候要用scanf("%d",&n);而不是%lf
第2个回答  2021-11-07

    把scanf("%f",&a);改为scanf("%lf",&a);一试——注意不是1f。

C语言为什么总是显示0.00000?
程序中的第五行循环条件写错了,正确的循环条件应该是s<=100;因,所以导致1次循环也没有执行,所以就输出显示0.000000了。

C语言的结果为什么永远是0.00000,应该怎么改?挺急的。明天就要了!_百 ...
错误1:你的n是整数,所以输入的时候要用scanf("%d",&n);而不是%lf,后者是用来读入double的 错误2:a=1\/i这里有点问题,在C里两个整数相除的结果还是整除,如果你要取得小数,可以改为比如a=1.0\/i;错误3:你的sum是一个小数,所以你的proc定义就要改为float proc(int n)建议改为double p...

为什么c语言中输入Input时后面的结果总是0.00000
你的程序应该是已知三边,求三角形面积,输入三条边的长度时要注意是否满足三角形三边长度关系。就是,是否能构成三角形。我试了你的程序3,4,5,运行结果6

c语言float输出为什么是0.00000
1\/3,是整型运算,为整型0,0给float.精度6位,则打印0.00000

c语言输出值为什么一直为0.00000?
if后面跟个空语句 很好奇你居然还有输出 不按照代码规范写害的是你自己 还有 三个个位数立方之后的和会是三位数?高中数学?n取值范围100-999 include <stdio.h> include <math.h> include <stdlib.h> int main() { int a, b, c;double n;for (a = 1; a <= 9; a++) { for (b =...

DEV C++ 计算浮点数的时候结果总是0.00000?
这是所有的C语言都是同样处理的。因为二个整数的商,仍是一个整数,所以1\/2是等于0的。应该要写成1.0\/2,就会等于0.5了。

C语言%f输出为什么小数位都为零了啊
这个与运算符的优先级有关。赋值运算(“=”)运算级比算术运算(“\/”)要低。先进行除法运算,两整数相除得到 0 ,最后执行赋值运算,因为 c 为float 类型,比 int 级高,int自动转为 float类型,即为你的答案0.00000

c语言1\/2为什么输出0啊
1和2都是整形数,1除以2的0.5,但是他会默认将结果转为整形,就是0,输出的时候是float型,所以将结果0转换为float型,就是0.00000。要想输出0.5,在1\/2前加上强制转换(float)

c语言输出结果为什么是0呢?
这是一个BUG 关于格式化输出(多个输出),尤其是有关浮点数的,他们输出是诡异的。因此关于浮点数的输出,最好分开写。

浮点数输出为0.00000是怎么回事
这是因为double用%lf,float用%f 你用的是%f,所以定义为float类型才能正确

相似回答