昆明理工大学c语言期末考试题库Word下载.docx
《昆明理工大学c语言期末考试题库Word下载.docx》由会员分享,可在线阅读,更多相关《昆明理工大学c语言期末考试题库Word下载.docx(120页珍藏版)》请在冰豆网上搜索。
15.变量的指针,其含义是指该变量的一个标志。
16.当以参数w打开文件时,若指定路径下已有同名文件,则覆盖原有文件。
单选题
1.下面有关C语言特点的说法中,错误的是______。
A.C语言编写的代码较为紧凑,执行速度也较快
B.C语言不仅适合编写各种应用软件,还适于编写各种系统软件
C.C语言是一种模块化和结构化的语言
D.C语言编写的程序通常不具备移植性
2.以下程序的输出结果是______。
#include
"
stdio.h"
void
main(){
int
a=2,b=3,c=4;
printf("
%d,%d,%d\n"
c,b,a);
}
A.4
3
2
B.2,3,4
C.4,3,2
D.2
4
3.以下选项中,能用作数据常量的是________。
A.0119
B.o126
C.2.5e2.5
D.119L
4.下列实型常量,错误的是__________。
A.3.2f
B.-2.2E-2F
C.-12.0
D.e3
5.表达式3.6-5/2+1.2+5%2的值是______。
A.3.3
B.3.8
C.4.3
D.4.8
6.若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是________。
A.++x,y=x--
B.x+1=y
C.x=x+10=x+y
D.double(x)/10
7.若变量均已正确定义并赋值,以下合法的C语言赋值语句是________。
A.x=y=5;
B.x=n%2.5;
C.x+n=i;
D.x=5=4+1;
8.有以下程序
#include
stdio.h>
main(){
a=2,b=2,c=2;
printf(“%d\n”,a/b%c);
程序运行后的结果是________。
A.0
B.1
C.2
D.3
9.有以下程序:
#include<
a=0,b=0,c=0;
c=(a-=a-5);
(a=b,b+=4);
printf(“%d,%d,%d”,
a,
b,
c);
A.0,4,5
B.4,4,5
C.4,4,4
D.0,0,0
10.执行以下程序段后,x的值为______。
int
a=14,b=15,x;
char
c='
A'
;
x=(a
&
b)
(c
'
B'
);
A.true
C.false
D.0
11.下列表达式中,______不是关系表达式。
A.x%2==0
B.!
(x%2)
C.(x/2*2-x)==0
D.x%2!
=0
12.执行以下程序段后,输出结果是______。
a=3,b=5,c=7;
if(a
a=b;
c=a;
if(c!
=a)
c=b;
%d,
%d\n"
a,b,c);
A.程序段有语法错误
B.3,5,3
C.3,5,5
D.3,5,7
13.下列程序的输出结果是_______。
#inlude
main()
{
a=5,b=4,c=3,d=2;
if(a>
b>
c)
d);
else
if((c-1
=d)==1)
d+1);
d+2);
A.2
B.3
C.4
D.编译时有错且无结果
14.以下运算符中优先级最低的运算符为______。
A.&
B.&
C.!
=
D.||
15.以下程序的运行结果是______。
main()
{
y=9;
for(
y
0;
y--)
if(y%3==0)
%d"
--y);
A.741
B.963
C.852
D.875421
16.以下描述中正确的是______。
A.由于do-while的循环体只能有一条语句,所以循环体内不能使用复合语句
B.do-while由do开始,用while结束,在while(表达式)后面不能写分号
C.在do-while循环中,是先执行一次循环体,再进行判断
D.在do-while循环中,根据情况可以省略while
17.若程序执行时的输入数据是2473<
回车>
,则下述程序的输出结果是______。
cs;
while((cs=getchar())!
='
\n'
){switch(cs-'
2'
)
case
0:
1:
putchar(cs+4);
2:
break;
3:
putchar(cs+3);
default:
putchar(cs+2);
}
}
}
A.668977
B.668966
C.6677877
D.6688766
18.执行以下程序时输入1234567890<
,则其中while循环体将执行_______次。
#include
char
ch;
while((ch=getchar())=='
0'
#"
A.10
B.0
D.1
19.以下程序执行后的输出结果是_______。
i,n=0;
for(i=2;
i
i++)
do{
if(i%3)
continue;
n++;
}while(!
i);
}
n=%d\n"
n);
A.n=5
B.n=2
C.n=3
D.n=4
20.下列字符串赋值语句中,不能正确把字符串“Hello
World”赋给数组的语句是______。
A.char
a1[]={'
H'
'
e
l'
o'
W'
r'
d'
\0'
};
B.char
a2[15];
strcpy(a2,"
Hello
World"
C.char
a3[15];
a3="
D.char
a4[10]={
21.若有说明:
a[3][4];
则对a数组元素的正确引用是______。
A.a[2][4]
B.a[1,3]
C.a[1+1][0]
D.a
(2)
(1)
22.下面程序的运行结果是______。
s[]="
012xy"
for(i=0;
s[i]!
=0;
if(s[i]
=
a'
s[i]<
z'
A.
B.
C.
D.
23.下面关于数组的叙述,正确的是______。
A.数组元素的数据类型都相同
B.数组不经过定义即可使用
C.同一数组中会出现不同类型的数组元素
D.数组名等同于第一个元素
24.以下程序运行后的输出结果是________。
f(int
x);
main(){
n=1,m;
m=f(f(f(n)));
printf("
m);
}int
x){return
x*2;
A.1
B.2
D.8
25.以下叙述中正确的是________。
A.局部变量说明为static,其生存期将得到延长
B.全局变量说明为static,其作用域将被扩大
C.任何存储类的变量在未赋初值时,其值都是不确定的
D.属于不同函数的局部变量不能同名
26.在函数调用过程中,如果函数funA调用了函数
funB,函数funB又调用了函数funA,则________。
A..称为函数的直接递归调用
B.称为函数的间接递归
C.称为函数的循环调用
D.不允许这样调用
27.下列的结论中只有________是正确的。
A.所有的递归程序均可以采用非递归算法实现
B.只有部分递归程序可以用非递归算法实现
C.所有的递归程序均不可以采用非递归算法实现
D.以上三种说法都不对
28.以下结构体的定义语句中,正确的是______。
A.struct
student
{int
num;
name[10];
age;
stu;
B.struct
}student;
struct
C.struct
}stu;
D.struct
29.当定义一个共用体变量时,系统为它分配的内存空间是______。
A.共用体中第一个成员所占用的空间
B.共用体中所