C语言末考第五章复习题a.docx
- 文档编号:10154217
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:11
- 大小:19.03KB
C语言末考第五章复习题a.docx
《C语言末考第五章复习题a.docx》由会员分享,可在线阅读,更多相关《C语言末考第五章复习题a.docx(11页珍藏版)》请在冰豆网上搜索。
C语言末考第五章复习题a
1.表达式:
10!
=9的值是(D)。
(A)true(B)非零值(C)0(D)1
2.为表示关系x大于等于y大于等于z,应使用C语言表达式(A)。
(A)(x>=y)&&(y>=z)(B)(x>=y)AND(y>=z)(C)(x>=y>=z)(D)(x>=y)&(y>=z)
3.能正确表示a≥10或a≤0的关系表达式是(D)。
(A)a>=10ora<=0(B)a>=10│a<=0
(C)a≥10││a≤0(D)a>=10││a<=0
4.若变量c为char类型,能正确判断出c为小写字母的表达式是(D)。
(A)'a'<=c<='z'(B)(c>='a')||(c<='z')
(C)('a'<=c)and('z'>=c)(D)(c>='a')&&(c<='z')
5.下面程序的输出是(C)。
(A)003(B)012(C)103(D)112
main()
{inta=-1,b=4,k;
k=(a++<=0)&&(!
(b--<=0));
printf("%d%d%d%\n",k,a,b);}
6.有如下程序段
inta=14,b=15,x;
charc=’A’;
x=(a&&b)&&(c<’B’);
执行该程序段后,x的值为(D)。
(A)true(B)false(C)0(D)1
7.以下程序的输出结果是(C)。
(A)-11(B)01(C)10(D)00
main()
{inta=-1,b=1,k;
if((++a<0)&&!
(b--<=0))
printf("%d%d\n",a,b);
else
printf("%d%d\n",b,a);
}
8.表示关系x<=y<=z的C语言表达式为(A)。
(A)(x<=y)&&(y<=z)(B)(x<=y)AND(y<=z)(C)(x<=y<=z)(D)(x<=y)&(y<=z)
9.设x,y,z,t均为int型变量,则执行以下语句后,t的值为(C)。
x=y=z=1;
t=++x||++y&&++z;
(A)不定值(B)2(C)1(D)0
10.阅读以下程序:
main()
{intx;
scanf("%d",&x);
if(x--<5)printf("%d",x);
elseprintf("%d",x++);
}
程序运行后,如果从键盘上输入5,则输出结果是(B)。
(A)3(B)4(C)5(D)6
11.以下程序输出结果是(B)。
main()
{intm=5;
if(m++>5)printf("%d\n",m);
elseprintf("%d\n",m--);
}
(A)7(B)6(C)5(D)4
12.以下程序的输出结果是(C)。
main()
{inta=-1,b=1,k;
if((++a<0)&&!
(b--<=0))
printf("%d%d\n",a,b);
else
printf("%d%d\n",b,a);
}
(A)-11(B)01(C)10(D)00
13.设有如下定义:
inta=1,b=2,c=3,d=4,m=2,n=2;
则执行表达式:
(m=a>b)&&(n=c>d)后,n的值为(B)。
(A)1(B)2(C)3(D)0
14.语句:
printf("%d",(a=2)&&(b=-2);的输出结果是(D)。
(A)无输出(B)结果不确定(C)-1(D)1
15.当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是(C)。
(A)c=b=a;(B)(a=c)‖(b=c);(C)(a=c)&&(b=c);(D)a=c=b;
16.能正确表示a和b同时为正或同时为负的逻辑表达式是(D)。
(A)(a>=0‖b>=0)&&(a<0‖b<0)(B)(a>=0&&b>=0)&&(a<0&&b<0)
(C)(a+b>0)&&(a+b<=0)(D)a*b>0
17.以下程序的输出结果是(C)。
(A)-11(B)01(C)10(D)00
main()
{inta=-1,b=1,k;
if((++a<0)&&!
(b--<=0))
printf("%d%d\n",a,b);
else
printf("%d%d\n",b,a);
}
18.设intx=1,y=1;表达式(!
x||y--)的值是(B)。
(A)0(B)1(C)2(D)-1
19.以下程序的输出结果是(C)。
(A)-11(B)01(C)10(D)00
main()
{inta=-1,b=1,k;
if((++a<0)&&!
(b--<=0))
printf("%d%d\n",a,b);
else
printf("%d%d\n",b,a);
}
20.有如下程序
main()
{intx=1,a=0,b=0;
switch(x){
case0:
b++;
case1:
a++;
case2:
a++;b++;
}
printf(“a=%d,b=%d\n”,a,b);
}
该程序的输出结果是(A)。
(A)a=2,b=1(B)a=1,b=1(C)a=1,b=0(D)a=2,b=2
21.有如下程序
main()
{floatx=2.0,y;
if(x<0.0)y=0.0;
elseif(x<10.0)y=1.0/x;
elsey=1.0;
printf(“%f\n”,y);
}
该程序的输出结果是(C)。
(A)0.000000(B)0.250000(C)0.500000(D)1.000000
22.有如下程序
main()
{inta=2,b=-1,c=2;
if(a)c=2;
elseif(b<0)c=0;
elsec++;
printf(“%d\n”,c);
}
该程序的输出结果是(C)。
(A)0(B)1(C)2(D)3
23.有如下程序段
inta=14,b=15,x;
charc=’A’;
x=(a&&b)&&(c<’B’);
执行该程序段后,x的值为(D)。
(A)ture(B)false(C)0(D)1
24.设x、y、t均为int型变量,则执行语句:
x=y=3;t=++x||++y;后,y的值为(C)。
(A)不定值(B)4(C)3(D)5
25.若执行以下程序时从键盘上输入9,则输出结果是(B)。
(A)11(B)10(C)9(D)8
main()
{intn;
scanf("%d",&n);
if(n++<10)printf("%d\n",n);
elseprintf("%d\n",n--);
}
26.若变量c为char类型,能正确判断出c为小写字母的表达式是(D)。
(A)'a'<=c<='z'(B)(c>='a')||(c<='z')
(C)('a'<=c)and('z'>=c)(D)(c>='a')&&(c<='z')
27.下面程序的输出是(C)。
(A)003(B)012(C)103(D)112
main()
{inta=-1,b=4,k;
k=(a++<=0)&&(!
(b--<=0));
printf("%d%d%d%\n",k,a,b);
}
28.能正确表示a和b同时为正或同时为负的逻辑表达式是(D)。
(A)(a>=0‖b>=0)&&(a<0‖b<0)(B)(a>=0&&b>=0)&&(a<0&&b<0)
(C)(a+b>0)&&(a+b<=0)(D)a*b>0
29. 以下程序的输出结果是(A)。
main()
{ int a=4,b=5,c=0,d;
d=!
a&&!
b||!
c;
printf("%d\n",d);
}
(A) 1 (B) 0 (C) 非0的数 (D) -1
30. 以下程序的输出结果是()。
main()
{ int a=4,b=5,c=0,d;
d=!
a&&!
b||!
c;
printf("%d\n",d);
}
(A) 1 (B) 0 (C) 非0的数 (D) -1
31. 已有定义:
int x=3,y=4,z=5;,则表达式!
(x+y)+z-1 && y+z/2的值是()。
(A) 6 (B) 0 (C) 2 (D) 1
32. 有以下程序
main()
{ int a=15,b=21,m=0;
switch(a%3)
{ case 0:
m++;break;
case 1:
m++;
switch(b%2)
{ default:
m++;
case 0:
m++;break;
}
}
printf(“%d\n”,m);}
程序运行后的输出结果是()。
(A) 1 (B) 2 (C) 3 (D) 4
33.有以下程序
main()
{ int i;
for(i=0;i<3;i++)
switch(i)
{ case 1:
printf("%d",i);
case 2:
printf("%d",i);
default:
printf("%d",i);
}
}
执行后输出结果是()。
(A) 011122 (B) 012 (C) 012020 (D) 120
34. 有以下程序
main()
{ int i=1,j=1,k=2;
if((j++‖k++)&&i++) printf("%d,%d,%d\n",i,j,k);
}
执行后输出结果是()。
(A) 1,1,2 (B) 2,2,1 (C) 2,2,2 (D) 2,2,3
35. 有以下程序
main()
{ int a=5,b=4,c=3,d=2;
if(a>b>c)
printf("%d\n",d);
else if((c-1>=d)==1)
printf("%d\n",d+1);
else
printf("%d\n",d+2)}
执行后输出结果是() 。
(A) 2 (B) 3 (C) 4 (D) 编译时有错,无结果
36.有以下程序
main()
{ int a=1,b=2,m=0,n=0,k;
k=(n=b>a)||(m=a
printf("%d,%d\n",k,m);
}
程序运行后的输出结果是()。
(A)0,0 (B)0,1 (C)1,0 (D)1,1
37.若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是()。
(A)abs(x-y)<10(B)x-y>-10&&x-y<10
(C) !
(x-y)<-10||!
(y-x)>10(D)(x-y)*(x-y)<100
38.有以下程序
main()
{
inta=3,b=4,c=5,d=2;
if(a>b)
if(b>c)
printf("%d",d+++1);
else
printf("%d",++d+1);
printf("%d\n",d);
}
程序运行后的输出结果是()。
(A)2(B)3(C)43(D)44
39.有以下程序
main()
{inta,b,d=25;
a=d/10%9;
b=a&&(-1);
printf("%d,%d\n",a,b);
}
程序运行后的输出结果是()。
(A)6,1(B)2,1(C)6,0(D)2,0
40.有以下程序
main()
{inti=1,j=2,k=3;
if(i++==1&&(++j==3||k++==3))
printf("%d%d%d\n",i,j,k);
}
程序运行后的输出结果是(D)。
(A)123(B)234(C)223(D)233
41.有以下程序
main()
{inta=1,b;
for(b=1;b<=10;b++)
{if(a>=8)break;
if(a%2==1){a+=5;continue;}
a-=3;
}
printf("%d\n",b);
}
程序运行后的输出结果是(B)。
(A)3(B)4(C)5(D)6
42.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是(D)。
(A)k%2(B)k%2==1(C)(k%2)!
=0(D)!
k%2==1
43.设有定义:
inta=2,b=3,c=4;,则以下选项中值为0的表达式是(A)。
(A)(!
a==1)&&(!
b==0)(B)(a
c||1(C)a&&b(D)a||(b+b)&&(c-a)
44.有以下程序
main()
{int a=0,b=0,c=0,d=0;
if(a=1) b=1;c=2;
else d=3;
printf("%d,%d,%d,%d\n",a,b,c,d);
}
程序输出(D)。
(A)0,1,2,0(B)0,0,0,3(C)1,1,2,0(D)编译有错
45.设有条件表达式:
(EXP)?
i++;j--,则以下表达式中(EXP)完全等价的是(B)。
(A)(EXP==0)(B)(EXP!
=0)(C)(EXP==1)(D)(EXP!
=1)
46.已有定义:
charc;,程序前面已在命令行中包含ctype.h文件,不能用于判断c中的字符是否为大写字母的表达式是(B)。
(A)isupper(c)(B)’A’<=c<=’Z’
(C)’A’<=c&&c<=’Z’(D)c<=(‘2’-32)&&(‘a’-32)<=c
47.以下程序用于判断a、b、c能否构成三角形,若能,输出YES,否则输出NO。
当给a、b、c输入三角形三条边长时,确定a、b、c能构成三角形的条件是需同时满足三个条件:
a+b>c,a+c>b,b+c>a。
请填空。
main()
{float a,b,c;
scanf("%f%f%f",&a,&b,&c);
if((a+b>c)&&(a+c>b)&&(b+c>a))printf("YES\n");/*a、b、c能构成三角形*/
else printf("NO\n");/*a、b、c不能构成三角形*/
}
48.表示条件:
x>10且x<100或x<0的C语言表达式是(x>10&&x<100)||x<0。
49.若x为int类型,请以最简单的形式写出与逻辑表达式!
x等价的C语言关系表达式
x==0。
50.以下程序运行后的输出结果是 。
main()
{ int a=1,b=3,c=5;
if (c=a+b) printf("yes\n");
else printf("no\n");
}
51.表示“整数x的绝对值大于5”时值为“真”的C语言表达式是。
52.若从键盘输入58,则以下程序输出的结果是 。
main()
{ int a;
scanf("%d",&a);
if(a>50) printf("%d",a);
if(a>40) printf("%d",a);
if(a>30) printf("%d",a);
}
53.以下程序运行后的输出结果是 。
main()
{ int x=10,y=20,t=0;
if(x==y)t=x;x=y;y=t;
printf(“%d,%d \n”,x,y);}
54.若有以下程序
main()
{ int a=4,b=3,c=5,t=0;
if(a
if(a printf("%d %d %d\n",a,b,c); } 执行后输出结果是 。 55.有以下程序 main( ) { int n=0,m=1,x=2; if(! n) x-=1; if(m) x-=2; if(x) x-=3; printf(“%d\n”,x); } 执行后输出结果是-4 56.以下程序运行后的输出结果是1。 main() {inta=1,b=2,c=3; if(c=a)printf("%d\n",c); elseprintf("%d\n",b); } 57.以下程序的输出结果是10。 main() {inta=-1,b=1,k; if((++a<0)&&! (b--<=0)) printf("%d%d\n",a,b); else printf("%d%d\n",b,a); } 58.有一函数: x (x<1) y=2x-1 (1≤x<10) 3x-11 (x≥10) 写一程序,输入x,输出y值。 59.给一个不多于5位的正整数,要求: (1)求出它是几位数; (2)分别打印出每一位数字; 60.输入三个整数x,y,z,请把这三个数由小到大输出。 (10分)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 第五 复习题