nynw.net
当前位置:首页 >> FloAt x; x=1+1%3*5/2; printF("%.2F",x);输出结果... >>

FloAt x; x=1+1%3*5/2; printF("%.2F",x);输出结果...

由于整数运算的结果仍是整数,所以,1+1%3*5/2=1+1*5/2==1+5/2=1+2=3 3赋值给x时自动转换为3.0 所以输出结果为3.00

z=9/2+2*x/y+1/2 = 4+2*x/1.1+0 = 16.00 x=6.6 另外,这个float类型本来就是近似存储,这样的题目太有意思了, 如果我填写 x=6.600000003不知道对不对哦??

第一个是因为3/2是两个整数的商,也是一个整数,所以就等于1(小数部分丢弃了)。 第二个是因为1.0/2=0.5,但是“%.lf"格式符指定输出0位小数,所以小数部分四舍五入,就也是1了。

x / y 是整型除法运算, 2/5 = 0 转 float 型 0.0,默认输出格式 %f 得: (A) 0.000000

要是说这是C语言的程序,该有空格,;的很多都少了 main() {int m=7,n=4; float a=38.4,b=6.4,x; x=m/2+n*a/b+1/2; printf("%f\n",x); } 整型 m=7,n=4 浮点型 a=38.4 b=6.4 x也是浮点型 x=m/2+n*a/b+1/2 其中m是整型,m/2=3 n*a/b=24,其中n虽...

%m.nf:输出共占m个字符,其中有n位小数,若数值宽度小于m左端补空格,如果数值宽度大于m则按实际输出 %7.5e:和以上一样,只是输出的结果使用指数表示。其中m个字符包括e+03

main() { int x=3,y=5; float z; z=x/y+y%x; printf("z=%f",z); }类型错了。在输出时,因该为%f 如果按照你写的 将会是int型的,会得到0.

输出了两个用逗号分开的十进制数:第一个是表达式'a'+5=3+1-->-5>=4也不成立,所以第二个输出也是0。x、y是两个浮点数,没有被输出。

这种算式没有意义,该题考查的是优先级的问题,但是在实际中程序员都会用括号表示出优先级,提高程序的阅读性

楼主您好,不是不用算1/2.而是C语言中规定除号两边若都为整数,则相处结果只保留整数部分。1/2=0.5,舍去小数部分,就等于0。 没有疑问请采纳,如有疑问请追问,谢谢!

网站首页 | 网站地图
All rights reserved Powered by www.nynw.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com