大学C语言期末考试题4及答案.docx
- 文档编号:1330909
- 上传时间:2022-10-20
- 格式:DOCX
- 页数:8
- 大小:17.69KB
大学C语言期末考试题4及答案.docx
《大学C语言期末考试题4及答案.docx》由会员分享,可在线阅读,更多相关《大学C语言期末考试题4及答案.docx(8页珍藏版)》请在冰豆网上搜索。
大学C语言期末考试题4及答案
大学C语言期末考试题及答案(4)
1、定义了一维int型数组a[10]后,下面错误的引用是_____
正确答案是:
B
a[0]=1;
a[10]=2;
a[0]=5*2;
a[1]=a[2]*a[0];
2、设有定义:
inta=1,*p=&a;floatb=2.0;charc='A';,以下不合法的运算是()
正确答案是:
C
*p++;
a--;
b++;
c--;
3、若有定义:
intx[10],*p=x;,则*(p+5)表示()
正确答案是:
B
数组元素x[5]的地址
数组元素x[5]的值
数组元素x[6]的地址
数组元素x[6]的值
4、执行以下程序段后,y的值是()。
inta[]={1,3,5,7,9}intx=0,y=1,*ptr;ptr=&a[1];while(!
x){y+=*(ptr+x);x++;}
正确答案是:
C
1
2
4
24
5、下面程序的运行结果是()。
#include
='\0';i++)if(*(t+i)>='0'&&*(t+i)<='9'){*(s+j)=*(t+i);j++;}*(s+j)='\0
正确答案是:
D
HPw19&17
HPw
19&17
1917
6、对于下面语句描述不正确的为_____structStudent{unsignedlongid;charname[30];charclass[30];}oStu1;
正确答案是:
B
structStudent为用户自定义类型
Student为用户自定义类型
name为结构体成员变量
oStu1为结构体变量名称
7、已知:
char*pstr[]={"abcd","efgh"},**p=&pstr;那么*(*(p+1)+1)的值为_____
正确答案是:
C
b
c
f
g
8、已知:
inta[5]={0,1,2,3,4};int*p=a;下面的表达式不可以用来表示a[3]的是_____
正确答案是:
C
*(a+3)
*(p+3)
*p+3
p[3]
9、strlen("A\0B\0C")的结果为_____
正确答案是:
B
0
1
2
3
10、定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为_____
正确答案是:
B
24
25
28
17
11、下面的描述错误的是_____
正确答案是:
C
函数可以有多个形式参数
函数可以没有返回值
函数内可以嵌套定义函数
函数可以被其他函数调用
12、下面关于全局变量的描述中,错误的是_____
正确答案是:
C
所有在函数体外定义的变量都是全局变量
全局变量可以和局部变量同名称
全局变量第一次被引用时,系统为其分配内存
全局变量直到程序结束时才被释放
13、以下关于循环的描述中,错误的是_____
正确答案是:
D
可以用for语句实现的循环一定可以用while语句实现
可以用while语句实现的循环一定可以用for语句实现
可以用do…while语句实现的循环一定可以用while语句实现
do…while语句与while语句的区别仅仅是关键字while的位置不同
14、引用数组元素时,数组下标可以是_____
正确答案是:
D
整型常量
整型变量
整型表达式
以上均可
15、已知:
inta[5]={0,1,2,3,4};int*p=a;下面的表达式不能用来表示a[3]的是_____
正确答案是:
C
*(a+3)
*(p+3)
*p+3
p[3]
16、已知:
charstr[10],*p=str;下面的语句中正确的是_____
正确答案是:
B
str="ABC";
p="ABC";
*str="ABC";
*p="ABC";
17、对于下面语句描述不正确的为_____structStudent{unsignedlongid;charname[30];charcalss[30];}oStu1;
正确答案是:
B
structStudent为用户自定义类型
Student为用户自定义类型
name为结构体成员变量
oStu1为结构体变量名称
18、一个c程序的执行是从________
正确答案是:
A
本程序的main函数开始,到main函数结束
本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
本程序的main函数开始,到本程序文件的最后一个函数结束
本程序文件的第一个函数开始,到本程序main函数结束
19、若x、i、j和k都是int型变量,则计算下面表达式后,x的值为________x=(i=4,j=16,k=32)
正确答案是:
C
4
16
32
52
20、若有定义:
inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是________
正确答案是:
A
2.500000
2.750000
3.500000
0.000000
21、以下叙述中正确的是()
正确答案是:
D
输入项可以是一个实型常量,如scanf(“%f”,3.5);
只有格式控制,没有输入项也能正确输入数据到内存,例如:
scanf(“a=%d,b=%d”);
当输入实型数据时,格式控制部分可以规定小数位数,例如:
scanf(“%4.2f”,&f);
当输入数据时,必须指明变量地址,例如:
scanf(“%f”,&f);
22、以下程序输出结果是()。
voidmain(){intm=5;if(m++>5)printf(“%d\n”,m);elseprintf(“%d\n”,m--);}
正确答案是:
B
7
6
5
4
23、当执行以下程序段时()。
x=-1;do{x=x*x;}while(!
x);
正确答案是:
A
循环体将执行一次
循环体将执行两次
循环体将执行无限次
系统将提示有语法错误
24、执行以下程序后,输出的结果是()。
voidmain(){inty=10;do{y--;}while(--y);printf(“%d\n”,y--);}
正确答案是:
D
-1
1
8
0
25、有如下程序voidmain(){intx=23;do{printf(“%d”,x--);}while(!
x);}该程序的执行结果是()
正确答案是:
B
321
23
不输出任何内容
陷入死循环
26、有如下程序voidmain(){inty=3,x=3,z=1;printf(“%d%d\n”,(++x,y++),z+2);}运行该程序的输出结果是()
正确答案是:
D
34
42
43
33
27、有如下程序voidmain(){intx=1,a=0,b=0;switch(x){case0:
a++;case1:
b++;case2:
a++;b++;}printf(“a=%d,b=%d\n”,a,b);}该程序的输出结果是()
正确答案是:
A
a=1,b=2
a=1,b=1
a=1,b=0
a=2,b=2
28、若程序中定义了以下函数doublemyadd(doublea,doubleb){return(a+b);}并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是
正确答案是:
A
doublemyadd(doublea,b);
doublemyadd(double,double);
doublemyadd(doubleb,doublea);
doublemyadd(doublex,doubley);
29、有以下程序intfun(intx,inty){if(x 正确答案是: B 函数调用出错 8 9 7 30、有以下程序voidf(intv,intw){intt;t=v;v=w;w=t;}main(){intx=1,y=3,z=2;if(x>y)f(x,y);elseif(y>z)f(y,z);elsef(x,z);printf(“%d,%d,%d\n”,x,y,z);}执行后输出结果是 正确答案是: A 1,2,3 3,1,2 1,33,1 2,3,1 31、以下列一维整型数组a的正确说明是________ 正确答案是: D inta(10); intn=10,a[n]; intn;scanf("%d",&n);inta[n]; #defineSIZE10inta[SIZE]; 32、若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为________。 (假设a[0][0]位于数组的第1个位置上) 正确答案是: D i*m+j j*m+i i*m+j-1 i*m+j+1 33、下面程序的运行结果是________。 #include"stdio.h"main(){chara[]="morning",t;inti,j=0;for(i=1;i<7;i++)if(a[j] 正确答案是: B mogninr mo morning mornin 34、执行下面程序段的结果是_____main(){intx=1,a=0,b=0;switch(x){case0: b++;case1: a++;case2: a++;b++}printf("a=%d,b=%d",a,b);} 正确答案是: B a=1,b=1 a=2,b=1 a=1,b=0 a=2,b=2 35、若有以下程序段: for(m=1;m<=100;m++){scanf(“%d”,&y);if(y<0)continue;printf(“%3d”,m);}正确的描述是_____ 正确答案是: D 当y<0时整个循环结束 当y>=0时什么也不输出 printf函数永远也不执行 最多允许输出100个非负整数 36、.以下关于switch语句和break语句的描述正确的是_____ 正确答案是: D 在switch语句中必须使用break语句 break语句只能用于switch语句体中 break语句只能用于循环语句中 在switch语句中可以使用break语句 37、下列描述中,正
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 语言 期末 考试题 答案