C语言程序设计期末考试卷及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C 语言程序设计期末考试卷及答案
一、单项选择题。从A 、B 、C 、D 四个选项中,选择一个最佳答案填入括号内( 每小题1分,共计30分)。
1.一个C 语言程序的执行是从( )。
A )本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
B )本程序的main 函数开始,到main 函数结束
C )本程序的main 函数开始,到本程序文件的最后一个函数结束
D )本程序文件的第一个函数开始,到本程序的main 函数结束
2.下列选项中不属于...C 语言关键字的是( )
。 A )switch B )printf C )default D )case
3.设有语句 int a = 4; ,则执行了语句 a += a -= a * a; 后,变量a 的值是( )。
A )24
B ) -24
C )4
D )16
4.已知int i;float d;,则正确的表达式是( )。 A )(int d) B )int(d)%i C )(int)d%i D )int(d%i)
5.已知int i,a;,执行语句i=(a=3*9,a/5),a+11; 后,变量i 的值是( )。 A )5
B )16
C )27
D )38
6.下列选项中合法的字符型常量是( )。 A )"a"
B )'\n'
C )"\n"
D )a
7.下面程序的运行结果是( )。
#include
printf("k = %d,k = %o,k = %x\n",k,k,k); }
A )k = 15,k = 15,k = 15
B )k = 15,k = 17,k = 17
C )k = 15,k = 017,k = 0xf
D )k = 15,k = 17,k = f
8.已知a,b,c 为int 类型,执行语句:scanf ("%d%d%d",&a,&b,&c );使得a 为10,b 为20,c 为30,以下不正确...
的输入形式是( )。 A )10 B )10 C )10,20,30 D )10 20 20 20 30 30 30
9.已知int x=1,y=2,z=3;,执行下列程序段后,输出的结果是( )。 if(x>y) z=x;x=y;y=z; printf("%d,%d,%d",x,y,z); A )1,2,3
B )2,3,3
C )2,3,1
D )2,3,2
10.若变量c 为char 类型,能正确判断出c 为大写字母的表达式是( )。 A )'A'<=c<='Z' B )('A'<=c)||(c<='Z') C )(A<=c)&&(c<=Z) D )('A'<=c)&&(c<='Z')
11.有以下程序段:
int k=0; while(k=1) k++;
while 循环执行的次数是( )。
------------------------------------------
第
----------------------------2----------------------------装
---------------------------------------线---------------------------------------------
班级 姓名 学号
------------------------------------------
第
----------------------------1----------------------------装
A)无限次 B)有语法错,不能执行 C)一次也不执行 D)执行1次12.以下程序的输出结果是()。
void main( )
{int x=1,a=0,b=0;
switch(x)
{ case 0:b++;
case 1:a++;
case 2:a++;b++; }
printf("a=%d,b=%d",a,b);
}
A)a=1,b=0 B)a=1,b=1 C)a=2,b=1 D)a=2,b=2 13.若有定义int i = 1;,执行语句while ( i < 10 ) i++; 后,i的值为()。
A)9 B)10 C)11 D)12
14.有说明语句int a[ ]={1,2,3,4,5};,则数组a包括了()个元素。
A)10 B)5 C)6 D)不确定
15.以下程序段执行后,输出结果是()。
char str[]="abc\n\012\\\n";printf("%d",strlen(str));
A)5 B)6 C)7 D)13
16.若有以下定义:float t[5][4];,能正确引用t数组元素的表达式是()。
A)t[1][4] B)t[5][0] C)t[0][0] D)t[0,0]
17.执行下列程序段:
int i,s = 0;
int a[ ][3] = {{1,2},{3,4},{5,6}};
for ( i = 0;i < 3;i++ )
s = s + a[i][i];
则s的值是()。
A)5 B)6 C)12 D)21
18.下述对字符数组的描述中,错误
..的是()。
A)字符数组可以存放字符串
B)字符数组中的字符串可以整体输入输出
C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值
D)不可以用关系运算符对字符数组中的字符串进行比较
19.设有宏定义#define Y(x) (x)+ 2 ,则下面程序段的运行结果是()。
int a = 2,b = 2,c = 1;
printf("%d\n",a * Y( b + c ) );
A)7 B)8 C)9 D)10
20.若用数组名作为函数调用的实参,传递给形参的是()。
A)数组的长度B)数组第一个元素的值
C)数组中全部元素的值D)数组的首地址
21.下面叙述中,不正确
...的是()。
A)在不同的函数中可以使用相同名字的变量
B)函数中的形式参数是局部变量
C)在一个函数内定义的变量只在本函数范围内有效
D)在一个函数内的复合语句中定义的变量在本函数范围内有效
22.若在程序中定义了以下函数:
float max( float a ,float b )
{ return ( a>b?a:b); }
并将其放在主调函数之后,则在调用之前应该对该函数进行声明,以下选项中错误
..的