当前位置:首页 > 高级语言程序设计试题(A)卷
2011—2012学年度下学期期末考试
11 级 计算机教育 专业(三年制) 高级语言程序设计试题(A)卷
(请将答案写在答题纸上,并写清考试课程名称、考场编号、考试时间及题号)
一、填空(每空1分,共10分)
1.C语言中普通整型变量的类型说明符为( int )。
2.设整型变量n的值为2,执行语句“n+=n-=n*n;”后,n的值是( -4 )。 3.C语言中基本的数据类型有:整型、( 浮点型 ) 、字符型。 4.有如下语句:char A[]={\数组A的元素个数为( 8 )个。
5.有如下输入语句:scanf(\为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是( a=1,b=3,c=2 )。 6.C语言的预处理语句以( # )开头。
7.C程序设计中语句后的符号 /*??*/ 所起作用是( 注释 )。
8.结构化程序设计方法规定程序或程序段的结构有三种:顺序结构、选择结构和(循环结构 )。 9.用{}把一些语句括起来称为( 复合 )语句。
10.变量Y满足以下两条件中的任意一个:①能被4整除,但不能被100整除;②能被400整除。请用C语言逻辑表达式表示所给条件,条件为( Y%4==0&&Y0!=0||Y@0==0,或者Y%4==0&&Y0||Y@0==0 )。
二、单项选择(每小题2分,共40分)
1.设整型变量a为5,使b不为2的表达式是( )。 A.b=a/2 C.b=a%2
2.以下说法中正确的是( )。 A.C语言程序总是从第一个的函数开始执行
B.在C语言程序中,要调用的函数必须在main()函数中定义 C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须放在程序的开始部分 3.以下程序的输出结果是( )。
int x=10,y=10;
printf(\,x--,--y);
1
B.b=6-(--a) D.b=a>3?2:1
A.10 10 C.9 10
B.9 9 D.10 9
4.选出下列标识符中不是合法的标识符的是( )。标识符由字母、下划线、数字这三个方面组成,
但开头必须是字母或下划线。 另外,关键字不能是标识符,如main
A.hot_do B.cat1 C._pri
D.2ab
5.以下程序的输出结果是( )。
int a=5; float x=3.14; a*=x*('E' - 'A'); printf(\,(float)a);
A.62.000000 B.62.800000 C.63.000000
D.62
6.若调用一个函数,且此函数中没有return 语句,则正确的说法是( A.没有返回值 B.返回若干个系统默认值 C.能返回一个用户所希望的函数值
D.返回一个不确定的值
7.以下可用于输入的库函数是( )。 A.printf B.scanf C.scan
D.input
8.以下程序的输出结果是( )。
char str[15]=\; printf(\,strlen(str));
A.15 B.14 C.7
D.6
9.用于输出字符型数据的格式控制符是( )。 A. %f B. %c C. %int
D.%d
10.以下选项中属于C语言的数据类型是( )。 A.复合型 B.双精度型 C.逻辑型
D.集合型
11.以下程序的输出结果是( )。
2
)。 #define f(x) x*x void main() { int a=6,b=2,c; c=f(a)/f(b); printf(\,c);
}
A.9 B.6 C.36
D.18
12.设有如下定义: int x=10,y=3,z;
则语句printf(\的输出结果是( )。 A.1 B.0 C.4
D.3
13.若有如下定义,则( )是对数组元素的正确的引用。 int a[10] , *p ; p=a ; A.*&a[10] B.a[11] C.*(p+10)
D.*p
14.以下不能正确定义二维数组的语句是( )。 A . int a[2][2]={{1},{2}}; B. int a[][2]={1,2,3,4}; C. int a[2][2]={{1},2,3};
D. int a[2][]={{1,2},{3,4}};
15.两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是(int x;
scanf(\
if(x++>5) printf(\else printf(\A. 7和5 B. 6和3 C. 7和4
D. 6和4
16.函数调用不可以( )。 A.出现在一个表达式中 B.出现在执行语句中 C.作为一个函数的实参
D.作为一个函数的形参
17.下列程序段的输出结果是( )。
void main() {
3
。 )
int k;
for (k=1;k<5;k++) { }
if(k%2!=0)
printf(\); else
printf(\) ;
A.#*#* C. ##
18.Break语句的正确的用法是( )。
B.*#*# D.以上都不对
A.无论在任何情况下,都中断程序的执行,退出到系统下一层 B.在多重循环中,只能退出最靠近的那一层循环语句 C.跳出多重循环 D.只能修改控制变量
19. 不能把字符串:Hello!赋给数组b的语句是( )。 A. char b[10]={'H','e','l','l','o','!'}; C. char b[10]; strcpy(b,\
B. char b[10]; b=\D. char b[10]=\
20. 在C程序中有如下语句:char *func(int,int); 它是( )。 A.对函数func的定义 C.对函数func的原型说明
B.对函数func的调用 D.不合法的
三、程序改错(每小题6分,共12分)
1.以下程序中标注有下划线的语句有错误,请改正。
//求a与b的最大值。 #include
void main() { }
printf(\,max(a,b)); //改为: int c;
c=A>b?a:b; //改为: return c;
2.以下程序中标注有下划线的语句有错误,请改正。
//求1+2+3+…+100
4
共分享92篇相关文档