C语言试题 请高手解答1. 执行下列程序后,c的值是( )。 int a=1,b=2,c; c=1.0/b*a;

作者&投稿:斐柯 (若有异议请与网页底部的电邮联系)
答案为 0
1.0/b得到0.5
再 *a 得到0.5
c为int型变量 所以得 0

0
1.0/b*a的结果为0.500000
再转换为int 为:0

0,我算了,也用TC验证了。

0

c语言试题 假定所有变量均已正确说明,下列程序段运行后x的值是? int a=0,b=0,c=0~

结果为4.
先给abc三个整形变量赋值0.if(!a)这里!a值为!0,即为1,即if(1),条件为真,执行x--,不执行else if语句。该if语句结束,此时x=34。
第二个if(c),c值为0,条件为假,不执行x=3,执行else语句x=4,此时x赋值为4.
结果x=4.
程序调试结果x=4,过程分析如有差错请指出。
唉?楼上先我回答了,分给他吧。

第一题
B
原题等效于( ( (20-0 )<=i )<=9 )
<=的结合性应该是自左向右的
20<=i的值为0,0<=9的值为1,所以整个表达式的值为1



第二题
D
原题等效于
if(a!=0)d=d-10;
else if(b==0)
{
if(c==0) d=15;
else d=25;
}

实际上都没执行到,d还是原值