1、以下程序的输出结果是( ).
#include
void main(void)
{ int a = 5,b = 4,c = 6,d;
printf(“%d\n”,d=a>b?(a>c?a:c):b);
}
A) 5 B) 4 C) 6 D) 不确定
2、以下程序的输出结果是( ).
void main(void)
{ int a = 4,b = 5,c = 0,d;
d = a && b || c;
printf(“%d\n”,d);
}
A) 1 B) 0 C) 非0的数 D) –1
3、以下程序的输出结果是( ).
#include
int f(void)
{ static int i = 0;
int s =1;
s += i;
i++;
return (s);
}
void main(void)
{
int i,a = 0;
for (i=0; i
人气:368 ℃ 时间:2020-10-01 10:26:59
解答
注:谢谢您的信任,我是昨天做了那10多题的网友,第一,我也在学习C++,所以想帮帮您,第二,我也在验证我的知识,扩充我的知识,所以来看看.如有错误,请指出,大家共同进步……
【1】选(C)
printf(“%d\n”,d=a>b?(a>c?a:c):b);这一句判断的语法是,括号优先级最高,这查表或者自己都可以记住的,由于括号的优先级最高,先看括号内容(a>c?a:c),显然是a与c的大小判断,(a>c?a:c)它的意思是a>c吗?如果大于,则取冒号前面的项,如果小于则取冒号后面的项(等于的话算作不大于).有a等于5,b等于4,c等于6可知,c是大于a的,那么(a>c?a:c)的结果是6,取的是c.然后再看(d=a>b?(a>c?a:c):b)简化成(d=a>b?6:b),由于赋值符号=符号的出现,那么显然是说明a>b?6:b这个语句的结果最后要赋值给d,那么相同原理,a大于b,因此取6(即冒号前面的项).所以d=6
【2】选(A)
d = !a && !b || !c;要明确“非”符号的最高的逻辑算符.因此刚刚的语句可以看作是d = (!a )&&( !b )||( !c).再明确的是&&和||两个符号是,是至左而右进行处理的.它这句语法的意思是,非a与非b是且关系么?如果得到结果再与非c看看或关系的结果,再最终得出结果.显然非a是0,之前说过,只要是非零就是真,在编译器里面是这么定义的,书本上则不然,只是因为编译器的缘故,我们才认为非零就是真,非b也是0,非c是1.非a与非b且的结果是1,然后1再和非c的1去得到或关系,最终结果是1.
【3】选(C)
先看主函数main(),void main(void) {int i,a = 0;for (i=0; i
推荐
猜你喜欢
- to,for和of的区别和用法
- 1.— We want someone to design the new art museum for us.— ________ the young fellow have a try?A.May B.Shall C.Will D.Ne
- 质量为m的物体在平行于水平面的一恒力F的作用下沿着倾角为a的斜面上加速运动,物体与斜面的动摩擦因数为u
- “邂逅”与“相遇”
- 一根钢筋长1/2米,另一根比他长2/5米.两根钢筋一共长多少米?
- 某校宿舍,若每间住一人,则有十人无住处;若每间住三人,则有十间无人住,问:有
- 用;望”写4个词语分别填进句子里 1.对桃花心木树苗的未来,种树人充满了( )
- 当只用一种正多边形镶嵌平面时,则该正多边形的一个内角的度数必须是--;用两种或多种正多边形时,首先需要计算出每个多边形内角的度数,若这些内角能够在一点围成--:则可以铺满地面,但要注意每种多边形的数量不一定相等