- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言第四章习题-2010.10.14更新
练习4-1
一、选择题
1.已知:char c=A; int i=1, j;,执行语句j=!ci++;,则i和j的值是( )。
A.1,1 B.1,0 C.2,1 D.2,0
2.已知:int x=1, y=2, z;,则执行z=xy?++x:++y;,则z的值为( )。
A.1 B.2 C.3 D.4
3.已知:int a=4, b=5, c;,则执行表达式c=a=ab后变量a的值为( )。
A.0 B.1 C.4 D.5
4.已知:char ch=A;,则表达式ch=(ch=Ach=Z)?(ch+32):ch;的值是( )。
A.A B.a C.Z D.z
5.若w=1, x=2, y=3, z=4;,则条件表达式wx?w:yz?y:z的结果为( )。
A.4 B.3 C.2 D.1
6.已知:int w=3, x=10, z=7;,则执行下面语句后的结果为( )。
printf(%d,x10?x+100:x-10);
printf(%d,w++||z++);
printf(%d,!wz);
printf(%d,wz);
A.0111 B.1111 C.0101 D.0100
7.已知:a=b=c=1且a、b、c均为int型变量,执行以下语句:++a||++b++c;
则变量a值为( ① ),b值为( ② )。
① A.不正确 B.0 C.2 D.1
② A.1 B.2 C.不正确 D.0
8.执行下面语句后x的值为( )。
int a=14, b=15, x;
char c=A;
x=((ab)(ca));
A.TRUE B.FALSE C.0 D.1
9.要判断char型变量m是否是数字,可以使用下列表达式( )。
A.0=mm=9 B.0=mm=9
C.0=mm=9 D.前面三个答案均是错误的
10.能正确表示“当x取值在[1..10]和[200..210]范围内为真,否则为假”的表达式是( )。
A.(x=1)(x=10)(x=200)(x=210)
B.(x=1)||(x=10)||(x=200)||(x=210)
C.(x=1)(x=10)||(x=200)(x=210)
D.(x=1)||(x=10)(x=200)||(x=210)
11.设x、y和z是int型变量,且x=3, y=4, z=5,则下面表达式中值为0的是( )。
A.xy B.x=y C.x||y+zy-z D.!((xy)!z||1)
12.已知x=43, ch=A, y=0;,则表达式x=ychB!y的值是( )。
A.0 B.语法错 C.1 D.“假”
13.判断char型变量c1是否为小写字母的正确表达式为( )。
A.a=c1=z B.(c1=a)(c1=z)
C.(a=c1)||(z=c1) D.(c1=a)(c1=z)
二、读程序、写结果
14.下面程序的运行结果:①( )、②( )、③( )、④( )、⑤( )。
#include stdio.h
main()
{ int i=16, j, x=6, y, z;
j=i+++1; printf(%d\n, j); /*输出①*/
x*=i=j; printf(%d\n, x); /*输出②*/
x=1; y=2; z=3;
x+=y+=z;
printf(%d\n, z+=xy?x++:y++); /*输出③*/
x=0x02ff; y=0xff00;
printf(%d\n, (xy)4|0x005f); /*输出④*/
x=y=z=-1;
++x||++y++z;
printf(%d%d%d\n, x, y, z); /* ⑤ */
}
练习4-2
一、选择题
1.下面程序的输出是。
#include stdio.h
main()
{int x=1, y=0, a=0, b=0;witch (x)
{ case 1: switch (y)
{ case 0: a++; break;
case 1:b++; break;
}
case 2: a++; b++; break;
}
printf(a=%d, b=%d\n, a, b);
}
A.a=2, b=1 B.a=1, b=1 C.a=1, b=0 D.a=2, b=2
2.若有说明int x ,y;,不能实现以下函数关系的程序段是。
A.if (x0) y=-1; B.y=; C.y
文档评论(0)