高级语言程序设计试题(B)卷
2011—2012学年度下学期期末考试
11 级 计算机教育 专业(三年制)
高级语言程序设计试题(B)卷
(请将答案写在答题纸上,并写清考试课程名称、考场编号、考试时间及题号)
一、填空(每空1分,共10分)
1.C语言中普通整型变量的类型说明符为( )。
2.执行下列语句int a=8; a+=a-=a*a; 后,a的值是( )。
3.C语言中基本的数据类型有:( ) 、实型、字符型。
4.数组 int a[3][4];共定义了( )个数组元素。
5.有如下输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是( )。
6.C语言的预处理语句以( )开头。
7.C语言编译系统在判断一个量是否为“真”时,以0代表“假”,以( )代表“真”。
8.结构化程序设计方法规定程序或程序段的结构有三种:顺序结构、( )和循环结构。
9.用{}把一些语句括起来称为( )语句。
10.设y为int型变量,请写出描述“y是奇数”的表达式( )。
二、单项选择(每小题2分,共40分)
1.设整型变量a为5,使b不为2的表达式是( )。
A.b=a/2 B.b=6-(--a)
C.b=a%2 D.b=a>3?2:1
2.为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与( )组成配对关系。
A.缩排位置相同的ifB.在其之前未配对的if
C.在其之前未配对的最近的ifD.同一行上的if
3.以下程序的输出结果是( )。
int x=10,y=10;
printf("%d %d\n",x--,--y);
A.10 10B.9 9
C.9 10D.10 9
4.选出下列标识符中不是合法的标识符的是( )。
A.hot_doB.cat1
C._priD.2ab
5.以下程序的输出结果是( )。
int a=5;
float x=3.14;
a*=x*('E' - 'A');
printf("%f\n",(float)a);
A.62.000000B.62.800000
C.63.000000D.62
6.在函数中默认存储类型说明符的变量应该是存储类型。A.内部静态B.外部C.自动D.寄存器char str[15]="hello!";
printf("%d\n",strlen(str));
A.15 B.14
C.7 D.6
9. 用于输出字符型数据的格式控制符是( )。
A.%f B.%c
C.%int D.%d
10.下列描述中不正确的是( )。
A.字符型数组中可能存放字符串。
B.可以对字符型数组进行整体输入、输出。
C.可以对整型数组进行整体输入、输出。
D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。
11. 以下程序的输出结果是( )。
#define f(x) x*x
void main()
{
int a=6,b=2,c;
c=f(a)/f(b);
printf("%d\n",c);
}
A.9 B.6
C.36 D.18
12. 设有如下定义: int x=10,y=3,z;
则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。
A.1B.0
C.4D.3
13. 定义如下变量和数组:int i; int x[3][3]={1,2,3,4,5,6,7,8,9};
则语句for(i=0;i<3;i++) printf("%d ",x[i][2-i]); 的输出结果是( )。
A.1 5 9 B.1 4 7
C.3 5 7 D.3 6 9
14. 以下对二维数组a进行正确初始化的是( )。
A.int a[2][3]={{1,2},{3,4},{5,6}}; B.int a[ ][3]={1,2,3,4,5,6};
C.int a[2][ ]={1,2,3,4,5,6}; D.int a[2][ ]={{1,2},{3,4}};
1