几道题想问一下。
1、oabc 这个数属于八进制数吗?这里的o不是数字0,是字母o
2、一个很奇怪的问题,这个题在机器上运行,得不出正确的结果:
int e=1,f=4,g=2;float m=10.5,n=4.0,k;
k=(e+f)/g+sqrt((double)n)*1.2/g+m 求k的值.答案:13.700000
式中存在2.0*1.2/2.0 难道分子、分母两个2.0可以约掉?如果按计算顺序不是应该从左到右的吗?
3、main()
{int m=5;
if (m++>5) printf("%d",m); else printf("%d",m--);
}
答案:6 可以看出是m加了1后再跟5比较,请问为什么不是先m和5比较,然后再自加1?
4、有这么一题:
t=0;
while (printf("*")
{t++;
if (t<3) break;
}
答案:其中循环控制表达式与'0'等价。 请问这句话什么意思,为什么和字符'0'等价
5、有这么个FOR语句 for(y=0.x=1;x>++y;x=i++) i=x;
请问()里面最后那个x=i++ ,是不是在这里就可以简单的理解成和x=++i相同,还是应该理解成先把i给x,然后,i++,即新的i值要下一次循环判断时再赋给x?