c语言期末考试题及答案.docx
- 文档编号:5705763
- 上传时间:2022-12-31
- 格式:DOCX
- 页数:18
- 大小:23.01KB
c语言期末考试题及答案.docx
《c语言期末考试题及答案.docx》由会员分享,可在线阅读,更多相关《c语言期末考试题及答案.docx(18页珍藏版)》请在冰豆网上搜索。
c语言期末考试题及答案
c语言期末考试题及答案
【篇一:
c语言期末考试试题及详细答案】
言中最简单的数据类型包括(b)。
a、整型,实型,逻辑型
b、整型,实型,字符型d、整型,实型,逻辑型,字符型c、整型,字符型,逻辑型
2、c语言中,运算对象必须是整型数的运算符是(a)。
a、%b、/c、%和/d、*
3、为表示关系x<y<z,应使用c语言表达式(a)。
a、(x<y)(y<z)b、(x<y)and(y<z)
c、(x<y<z)d、(x<y)(y<z)
4、c语言程序的基本单位是(c)。
a、程序行b、语句c、函数d、字符
5、c语言的程序一行写不下时,可以(d)。
a、用逗号换行b、用分号换行
c、用回车符换行d、在任意一空格处换行
6、下述标识符中,(c)是合法的用户标识符。
a、abb、voidc、_studentd、
7、在c语言中,字符型数据在内存中以(b
a、补码b、ascii码c、反码d、原码
8、一个程序由若干文件组成,共用同一变量,则此变量的存储类别应该为(b)。
a、autob、externc、staticd、register9、以下关于switch语句和break语句的描述中,只有(ba、在switch语句中必须使用break语句
b、在switch语句中,可以根据需要使用或不使用break语句
c、break语句只能用于switch语句中
d、break语句是switch语句的一部分
10、c语言规定:
调用一个函数时,实参变量和形参变量之间的数据传递是(b)。
a、地址传递b、值传递
c、由实参传给形参,并由形参传回给实参d、由用户指定传递方式
11、下述c语言转义符中(d)是非法的。
a、\bb、\037c、\0xfd、\
12、为了要计算s=10!
(10的阶乘),则以下对s的定义正确的是(d)。
a、intsb、unsignedsc、shortsd、longs
13、判断变量ch中的字符是否为大写字母,最简单的正确表达式是(a)。
a、ch>=ach<=zb、a<=ch<=z
c、a<=ch<=zd、ch>=ach<=z
14、在c语言中,能表示无符号长整型常数的是(d)。
a、olb、4962710uc、912374ud、2ul
15、能正确表示c语言的字符常量的是(c)。
a、\0x41b、ac、\0d、\0
16、c语言中逻辑表达式的值为(a)。
a、0或1b、非零值或零值c、true或falsed、true或false
17、c语言提供的基本数据类型关键字是(c)。
a、integerb、floatc、unsignedd、double
18、若定义语句:
intb[]={1,2,3,4,5},*p=b;则表达式*p++的值是(a)。
a、1b、2c、b[0]的地址d、b[1]的地址
19、在下列选项中,不正确的表达式是(c)。
a、a>bb、c--,++b,a+=1c、a=c+b>n-m=kd、p++
20、若有以下定义:
inta[]={1,2,3,4,5,6,7};
charcl=b,c2=2;
则数值不为2的表达式是(d)。
a、a[1]b、d-clc、a[3-c2]d、c2-0
25、下述对c语言字符数组的描述中错误的是(c)。
a、字符数组可以存放字符串
b、字符数组中的字符串可以整体输入、输出
c、可以在赋值语句中通过赋值运算符"="对字符数组整体赋值
d、不可以用关系运算符对字符组中的字符串进行比较
27、以下程序的输出结果是(a)。
main()
{inti=010,j=10,k=ox10;
printf(%d,%d,%d\n,i,j,k);
}
a、8,10,16b、8,10,10c、10,10,10d、10,10,16
28、以下程序的输出结果是(b)。
#include<stdio.h>
main()
{printf(%d\n,null);}
a、不确定的值(因变量无定义)b、0c、-1d、1
29、以下程序的输出结果是(b)。
main()
{charc1=6,c2=0;
printf(%d,%d,%d\n,c1,c2,c1-c2);
}
a、因输出格式不合法,输出出错信息b、54,48,6
c、6.0,7d、6,0,6
32、下述对c语言字符数组的描述中错误的是(c)。
a、字符数组可以存放字符串
b、字符数组中的字符串可以整体输入、输出
c、可以在赋值语句中通过赋值运算符=对字符数组整体赋值
d、不可以用关系运算符对字符组中的字符串进行比较
33、turboc中,对于以下程序(a)。
main()
{intx,y;
y=creat(x);
printf(%d\n,y);
}
creat(inta)
{returna++;}
a、编译时会给出错信息
b、顺利进行编译、连接、执行;不报任何错误
c、顺利通过编译、连接、但不能执行
d、顺利通过编译,但连接出错
34、设有如下定义:
intx=10,y=4,z;
则语句:
printf(%d\n,z=(x%y,x/y));
的输出结果是(c)。
a、1b、0c、2d、3
35、下述程序段的输出结果是(d)。
main()
{intx=10,y=10;
printf(%d,%d\n,x++,++y);
}
a、10,10b、11,11c、11,10d、10,11
36、定义如下变量和数组:
intj;
intx[3][3]={1,2,3,4,5,6,7,8,9};
则下面语句的输出结果是(c)。
for(i=0;i<3;i++﹚
printf(%d,x[i][2-i]);
a、159b、147c、357d、369
37、若要求在if后一对圆括号中表示a不等于0的关系,则不能正确表示这一关系的表达式为(c)。
a、a<>0b、!
ac、a=0d、a
38、若m,y,z均为int型变量,则执行下面语句后m值是(a)。
m=1;x=2;y=3;z=4;
m=(m<x)?
m:
x;
m=(m<y)?
m:
y;
m=(m<z)?
m:
z;
a、1b、2c、3d、4
39、若有定义:
inta=7;floatx=2.5,y=4.7,则表达式x+a%3*(int)(x+y)%2/4的值是(a)。
a、2.500000b、2.750000c、3.500000d、0.000000
40、如下说法不正确的是(c)。
a、c>a+b等效于c>(a+b)
b、若a,b均为真,则a||b为真
c、表达式cd的值为0
d、逻辑运算符!
比逻辑运算符||的优先级高
41、putchar()函数可以向终端输出一个(b)。
a、整型变量表达式值b、字符
c、字符串d、实型变量值
42、表达式18/4*sqrt(4.0)/8值的数据类型为(c)。
a、intb、floatc、doubled、不确定
43、若已定义a为整型变量:
a=-2l;
printf(%d\n,a);
则以上语句(b)。
a、赋值不合法b、输出值为-2c、输出为不确定值d、输出值为2
45、若int类型数据占两个字节,则以下语句的输出为(d)。
intk=-1;
printf(%d,%u\n,k,k);
a、-1,-1b、-1,32767c、-1,32768d、-1,65535
46、已知字母a的ascii码十进制值为97,则执行以下语句后的输出为(c)。
yhgchara=a;
a--;
printf(%d,%c\n,a+2-0,a+3-0);
a、b,cb、a—运算不合法,故有语法错
c、98,cd、格式描述和输出项不匹配,输出无定值
47、下面语句中(b)是c语言的正确赋值语句。
a、a=1,b=2b、i++;
48、设有以下说明语句
structstu
{inta;
floatb;
}stutype;
则下面的叙述不正确的是(c)。
【篇二:
大学c语言期末考试试题及答案汇总】
ntb、doubleint_
c、charford、floatus$
d
______。
2以下不合法的用户标识符是______。
a、j2_keyb、double
c、4dd、_8_
c
3以下4______。
a、_mainencludesin
b、if-maxturbo
c、txtreal3com
d、intk_2_001?
?
?
a
4以下定义语句中正确的是______。
a、chara=ab=b;
b、floata=b=10.0;(正解a=10.0b=10.0)
c、inta=10,*b=a;d、
float*a,b=a;
c
量和标识符5以下不能定义为用户标识符的是______。
a、scanfb、void
c、_3com_d、int
d
6以下有4______。
a、for-subcase
b、4ddosize
c、f2_g3ifabc
d、wordvoiddefine
c
7c语言中最简单的数据类型包括______。
a、整型、实型、逻辑型
b、整型、实型、字符型
c、整型、字符型、逻辑型
d、整型、实型、逻辑型、字符型
b
8c语言关键字是______。
a、varb、cherc、integerd、default
d
9______。
a、mainb、_0c、_intd、sizeof
d
10下列叙述中正确的是______。
a、c语言中既有逻辑类型也有集合类型
b、c语言中没有逻辑类型但有集合类型
c、c语言中有逻辑类型但没有集合类型
d、c语言中既没有逻辑类型也没有集合类型
d
11当c的值不为0c的值赋给变量a、b的是______。
a、c=b=a;b、(a=c)‖(b=c);
c、(a=c)(b=c);d、a=c=b;
c
12以下选项中非法的表达式是______。
a、0=x100b、i=j==0c、(char)(65+3)d、x+1=x+1
d
13以下程序的输出结果是______。
#includestdio.h
main()
{
inta,b,d=241;
a=d/100%9;
b=(-1)(-1);printf(%d,%d\n,a,b);
}
a、6,1b、2,1c、6,0d、2,0
b
14以下循环体的执行次数是______。
main()
{
inti,j;
for(i=0,j=1;i=j+1;i+=2,j--)
printf(%d\n,i);
}
a、3b、2c、1d、0
c15有以下定义语句
doublea,b;intw;longc;
______。
a、a=a+b=b++
b、w%((int)a+b)
c、(c+w)%(int)a
d、w=a=b;
c
16有如下程序
main()
{
inta;charc=10;
floatf=100.0;doublex;
a=f/=c*=(x=6.5);
printf(%d%d%3.1f%3.1f\n,a,c,f,x);
}
程序运行后输出结果是______。
a、16516.5
b、1651.56.5
c、1651.06.5
d、2651.56.5
b17若变量a、ii______。
a、a==1b、++i;c、a=a++=5;d、a=int(i);
b
18c语言语法的表达式是______。
a、a:
=b+1b、a=b=c+2
c、int18.5%3d、a=a+7=c+b
b
20设变量x为float
x
将第三位四舍五入的是______。
a、x=x*100+0.5/100.0
b、x=(x*100+0.5)/100.0
c、
x=(int)(x*100+0.5)/100.0
d、x=(x/100+0.5)*100.0
c
22在一个c程序中______。
a、main函数必须出现在所有函数之前
b、main函数可以在任何地方出现
c、main函数必须出现在所有函数之后
d、main函数必须出现在固定位置
b
c语言程序的构成和格式23以下说法中正确的是______。
a、#define和printf都是c语句
b、#define是cprintf不是
c、printf是c#define不是
d、#define和printf都不是c语句
d
c语言程序的构成和格式24k是
int
k=-3
if(k=0)printf(####)
elseprintf();
上面程序片段的输出结果是______。
a、####b、c、####
d、有语法错误,无输出结果
d
c语言程序的构成和格式25以下4______。
a、{;}b、a=0,b=0,c=0;c、if(a0);d、
if(b==0)m=1;n=2;
d
c语言程序的构成和格式26有以下程序
main()
{
inta=0,b=0;
a=10;/*给a赋值*/
b=20;/*给b赋值*/
printf(a+b=%d\n,a+b);
}
程序运行后的输出结果是______。
a、a+b=10b、a+b=30c、30d、出错
b
c语言程序的构成和格式
27______。
a、1.234e04b、1.234e0.4
c、1.234e+4d、1.234e0
28以下符合c语言语法的实型常量是______。
a、1.2e0.5b、3.14159ec、.5e-3d、e15
c
30表达式3.6-5/2+1.2+5%2的值是______。
a、4.3b、4.8c、3.3d、3.8
31
a、552b、264c、144d、-264
d
32
以下变量x、y、z均为double
语言表达式是______。
a、x/y*zb、x*(1/(y*z))
c、x/y*1/zd、x/y/z
a
33d
inta=12a+=a-=a*aa的值是______。
x/(y*z)的c
inta=8,b=5,c;,执行语句c=a/b+0.4;
a、1.4b、1c、2.0d、2
b
34c的值是______。
floata=2,b=4,h=3;,以下c语言表达式与代数式1/2((a+b)h)计算结果不
相符的是______。
a、(a+b)*h/2b、(1/2)*(a+b)*h
c、(a+b)*h*1/2d、h/2*(a+b)
b
【篇三:
大学c语言期末考试题及答案】
lass=txt>1、构成c语言的基本单位是___b____。
过程
函数
语句
命令
2、设x为整型变量,不能正确表达数学关系:
5x10的c语言表达式是__b___。
5
x5x10
x==6||x==7||x==8||x==9
!
(x=5)(x10)
3、在c语言中,逻辑运算符的优先级从高到低的排列顺序为__d___。
、||、!
||、、!
、!
、||
!
、、||
4、下面语句中,正确的是__d___。
printf(%c\n,student);
printf(%c\n,c);
printf(%s\n,a);
printf(%s\n,hello);
5、对于for(表达式1;;表达式3)可以理解为__b___。
for(表达式1;0;表达式3)
for(表达式1;1;表达式3)
for(表达式1;表达式1;表达式3)
for(表达式1;表达式3;表达式3)
6、执行下面程序段的结果是__b___。
main(){intx=1,a=0,b=0;switch(x){case0:
b++;case1:
a++;case2:
a++;b++;}printf(a=%d,b=%d,a,b);}a=1,b=1
a=2,b=1
a=1,b=0
a=2,b=2
7、执行下面程序段的结果是__d___。
intx=0;do{printf(“%2d”,x--);}while(x);
打印出321
打印出23
不打印任何结果
陷入死循环
8、设x=10,y=5;z=15,执行下面一段程序后z的结果是__c___。
if(xy)if(yz)x=y;elsez=y;
7
6
5
4
9、如果一个函数被说明为static,那么__b___。
该函数只能被main函数调用
该函数能被当前文件的函数调用,但不能被其他文件的函数调用
该函数不能被当前文件的函数调用,可以被其他文件的函数调用
任何文件的函数都可以调用该函数
10、下面关于局部变量的描述中,错误的是__d___。
函数的局部变量的有效范围只能在本函数
函数的形式参数也是局部变量
局部变量的名称不能和函数同名称
不同的函数中不能定义相同名称的局部变量
11、下列初始化字符数组的语句中,错误的是__a___。
charstr[5]=hello;
charstr[]={h,e,l,l,o,\0};
charstr[5]={hi};
charstr[100]=;
12、引用数组元素时,数组下标可以是__d___。
整型常量
整型变量
整型表达式
以上均可
13、已知:
charstr[10],*p=str;下面的语句中正确的是__b___。
str=abc;
p=abc;
*str=abc;
*p=abc;
14、下面语句中,错误的是___d__。
inti;int*p;p=i;
inti,*p;p=a;
inti,*p=a;
inti,*p;*p=i;
15、下面对于结构体类型的描述正确的是__a___。
结构体类型的大小为各成员变量所占内存的总和
结构体类型变量与简单数据类型变量的引用规则一致。
结构体类型的大小为其成员中所占内存空间最大的变量的大小
结构体类型的大小为其最后一个成员中所占内存空间的大小
16、c语言规定:
在一个源程序中,main函数的位置____c____。
必须在最开始
必须在系统调用的库函数的后面
可以任意
必须在最后
17、表达式18/4*sqrt(4.0)/8值的数据类型是___c____。
int
float
double
不确定
18、在c语言中,char型数据在内存中的存储形式是___d___。
补码
反码
原码
ascii码
19、阅读以下程序,当输入的数据形式为:
25,13,10cr时,正确的输出结果为___d___。
main(){intx,y,z;scanf(%d%d%d,x,y,z);
printf(x+y+z=%d\n,x+y+z);}
x+y+z=48
x+y+z=35
x+z=35
不能确定
20、有如下程序voidmain(){floatx=2.0,y;if(x0.0)y=0.0;elseif(x10.0)y=1.0/x;elsey=1.0;printf(“%f\n”,y);}该程序的输出结果是(c)。
0.000000
0.250000
0.500000
1.000000
21、判断char型变量s是否为小写字母的正确表达式是__c____。
a=s=z
(s=a)(s=z)
(s=a)(s=z)
(a=s)and(z=s)
22、执行以下语句后,y的值为___a___。
intx,y,z;x=y=z=0;++x||++y++z;
1
2
不确定值
23、有如下程序段:
intnumber=0;while(number++=3)
printf(“%d\n”,number++);则正确的执行结果是___c___。
234
012
13
24
24、有如下程序voidmain(){intn=9;while(n6){n--;
printf(“%d”,n);}}该程序段的输出结果是__b___。
987
876
8765
9876
25、要使以下程序段输出10个整数,请在空格中填入一个整数。
for(i=0;i=___b___;printf(%d\n,i+=2));
15
18
20
10
26、设函数fun的定义形式为:
fun(charch,floatx){?
}则以下对函数fun的调用语句中正确的是___b___。
fun(“abc”,3)
t=fun(‘d’,5)
fun(‘ab’,3)
fun(‘78’,1)
27、函数求sum(intn)的功能是计算自然数1到n的和,即1+2+?
+n。
main(){printf(thesum=%d\n,sum(10));}intsum(intn){ints=0,i;
for(i=0;i=n;i++)_____b_____}请从备选答案中选择一答案,补全程序。
s=s+n;returns;
s=s+i;returns;
returns;
returns+=i;
28、设函数fun的定义形式为intfun(inta[],intn){ints=0,i=0;for(i=0;in;i++)s+=a[i];returns;}main(){inta[10]={1,2,3,4,5};printf(sum=%d,fun(a[2],2));}则程序的运行结果为___c___。
3
5
7
9
29、若有说明:
inta[10];则对数组元素的正确引用是___d____。
a[10]
a[3,5]
a(5)
a[10-10]
30、以下不正确的定义语句是___b___。
doublex[5]={2.0,4,0,6,0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 期末 考试题 答案