大一C语言的问题下列变量定义中合法的是(  )A.float-a=1-.1e-1; B.long do=0xfdaL;

问题描述:

大一C语言的问题
下列变量定义中合法的是(  )
A.float_a=1-.1e-1; B.long do=0xfdaL; C.float2_and=1-e-3;
为什么,其他错在哪
1个回答 分类:综合 2014-11-15

问题解答:

我来补答
B中0x代表16进制,16进制每一位的范围是0-9,a,b,c,d,e,f
没有L

C中2_and变量命名不正确,变量定义数字不能作第一个字符,第一个字符必须是_或字母
再问: 1-.1e-1是什么意思啊
再答: B好像的确是因为do是关键字,那个L可能是代表long型,我说错了。。 1-.1e-1 我理解 前面的 1- 1减去后面的 .1e-1 0好像省略了吧,应该是0.1e-1 我理解是0.1 * ( 1 / 10) e-1应该是10的-1次方
再问: 为什么do是关键词就不行啊,还有为什么1-.1e-1不是0.9的-1次方
再答: 关键字本来就不能做变量名,如果定义了一个 int while; 当遇到while循环时,编译器就不知道这个是while循环还是你自己定义的变量了 当时学的时候老师应该说过吧 第二个 应该先算乘法。。 那个减法应该是最后才计算的,所以过程中不会出现0.9,应该先算乘方,之后是乘法,最后才是减法 1-(0.1 * e-1) 是1-0.01=0.99
 
 
展开全文阅读
剩余:2000
上一页:关于ATP```````