内容正文:
— 9—
C语言专项提高测试卷(二)
本试卷分卷一(选择题)和卷二(非选择题)两部分,满分 100分,考试时间 90分钟
卷一 (选择题,共 50分)
一、单项选择题(本大题共 25小题,每小题 2分,共 50分。在每小题列出的四个选项中,只
有一项符合题目要求,请将符合题目要求的选项字母代号选出)
1.若有说明语句:char c='\72';则变量 c ( )
A.包含 1个字符 B.包含 2个字符
C.包含 3个字符 D.说明不合法,c的值不确定
2.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是 ( )
A.7 B.8 C.6 D.2
3.已知 int a,b;用语句 scanf("%d%d",&a,&b);输入 a,b的值时,不能作为输入数据
分隔符的是 ( )
A., B.空格 C.回车 D.Tab键
4.设 int a=12,则执行完语句 a+=a-=a*a后,a的值是 ( )
A.552 B.264 C.144 D.-264
5.执行下面程序中的输出语句后,输出结果是 ( )
#include<stdio.h>
main()
{int a;
printf("%d
",(a=3*5,a*4,a+5)); }
A.65 B.20 C.15 D.10
6.下面程序的输出是 ( )
#include<stdio.h>
main()
{int x=023;printf("%d
",--x); }
A.17 B.18 C.23 D.24
7.以下程序的输出结果是 ( )
#include<stdio.h>
main()
{ int x=10,y=10;
printf("%d %d
",x--,--y); }
A.10 10 B.9 9 C.9 10 D.10 9
8.下列关于运算符优先顺序的描述中正确的是 ( )
A.关系运算符< 算术运算符< 赋值运算符< 逻辑与运算符
— 10 —
B.逻辑运算符< 关系运算符< 算术运算符< 赋值运算符
C.赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符
D.算术运算符< 关系运算符< 赋值运算符< 逻辑与运算符
9.以下程序的运行结果是 ( )
#include "stdio.h"
main()
{int a,b,d= 241;
a=d/100 % 9;
b= (-1)&&(-1);
printf("%d,%d",a ,b); },
A.6,1 B.2,1 C.6,0 D.2,0
10.执行以下语句后 a的值为 ( )
int a,b,c;
a= b= c= 1;
++a||++b&&++c;
A.错误 B.0 C.2 D.1
11.运行下面程序时,从键盘输入"12,34,9<CR>",则输出结果是 ( )
#include <stdio.h>
main( )
{ int x,y,z;
scanf("%d,%d,%d",&x,&y,&z);
if (x<y)
if (y<z)printf("%d
",z);
else printf("%d
",y);
else if (x<z)printf("%d
",z);
else printf("%d
",x); }
A.34 B.12 C.9 D.不确定的值
12.分析程序
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;}
}
— 11—
printf(“%d
”,m);
}
程序运行后的结果是 ( )
A.1 B.2 C.3 D.4
13.以下程序的运行结果是 ( )
#include ”stdio.h”
main()
{
int a=2,b= -1,c=2;
if (a<b)
if (b<0)
c=0;
else c++;
printf(”%d
”,c);
}
A.0 B.1 C.2 D.3
14.以下正确的描述是 ( )
A.continue语句的作用是结束整个循环的执行
B.只能在循环体内和 switch语句体内使用 break语句
C.在循环体内使用 break语句或 continue语句的作用相同
D.从多层循环嵌套中退出时,只能使用 goto语句
15.下面程序段 ( )
for(t=1;t<=100;t++)
{ scanf("%d",&x);
if(x<0) continue;
printf("%3d",t);
}
A.当 x<0时整个循环结束 B.x>=0时什么也不输出
C.printf函数永远也不执行 D.最多允许输出 100个非负整数
16.下面程序段的输出结果是 ( )
x=3;
do