请问为什么这个结果等于0.0000,还有怎样才能得到0.6666,高手帮帮忙,谢谢!
C语言问题 int a;float b; main() { a=2; b=a\/3; printf("%f",b); }
b=a\/3,a为整型,再没赋值给b之前的值是2\/3已经为零(两个整型数相除),题中根本就没出现0.666667的机会,赋值给b之后,变为float型,自动在后面追加了6个零,成为小数0.000000。要想得到0.666667,那就把a变成浮点型的就行。
...请给我答案和解释:若有说明语句:int a; float b;,以下输入语句正确的...
C %d是整型(int)的输出格式,%f是浮点型(float)的输出格式。
c语言 int a; float b; double c; scanf("%d,%lf,%lf",&a,&b,&c...
这是因为程序中输出数据的格式符指定错误。因为float型的输出必须%f而不能使用%lf格式符。,还有就是要注意输入数据时,要用英文的逗号分隔不同的数字:关于printf格式符更多的使用说明,见下述:详见:网页链接
C语言float问题
include <stdio.h>void main(){ int a, b;float div;a = 1;b = 2;div = (float)a \/ b;printf("div=%f", div);getchar();}
c语言程序填空题 1、如下程序的输出结果是 。 main( )
main( ){ int a=2,b=-1,c=3;if(a<b)if(b<0)c=0;else c++;printf(“c=%d”,c);} else 是与前面一个最近的if对应的,a=2,b=-1,a<b不成立,因此后面一个if--else---语句没有执行,c值没有改变。2、求 1! + 2!+3!+---+10!main ( ){ float s=0, t=1;...
c语言问题???
int d;c=a-b+7;d=b*c;a=b+c+d;b=-a;'Vtablea,2,6b,2,19c,2,0d,2,0of Vtable'Vupdate1,6;2,193,04,03,655304,-1141,-1012,101of Vupdateof Practicevoid main(){long x,y;int a,b,c,d;x=5;y=6;a=7;b=8;c=x+a;d=y+b;printf("c=x+a=%d,d=y+b=%d\\n",c...
用c语言,输入两个浮点数a和b,输出a\/b
int main(){ float a,b;printf("请输入两个浮点数a b:");scanf("%f %f",&a,&b);if(0==b)printf("ERROR\\n");else printf("%.2f\\n",a\/b);return 0;}
c语言 从键盘输入2个数,求2个数的平均数,小数点后保留1位输出._百度...
include<stdio.h>void main(){ float a,b;printf("输入两个数(逗号隔开):"); scanf("%f,%f",&a,&b);printf("数%.1f和数%.1f的平均数等于%.1f\\n",a,b,(a+b)\/2);}
C语言浮点型数的问题
浮点变量对于任何数都是化成小数来表示的,比如9表示为:1.001*10^3 我想楼主应该知道,浮点数的小数部分只能保存一定长度的数,如果现在假设有一个只能保存2位小数的浮点变量的话,那1.001就必须进行四舍五入了,照搬十进制数的四舍五入,如果下一位是1,则进一,是0则不进一,所以这个数就变成了1.01...
C语言 设定义:int a;float b;执行scanf("%2d%f",&a,&b);语句时,
2d决定了a只能接受两位数字,所以a的值为87 你的%2d%f是连在一起的,那么按照默认约定,输入的数据也应该是连续的,中间没有空格。否则会将空格作为输入的结束符看待。6和5中间有一个空格,所以输入到6就结束了,后面的543.0被无视。则将6赋值给b,打印b的值即为6.00000 ...