C考试系统题库含答案(1)
第一章C语言基础知识
(C语言概述、算法、数据类型运算符表达式、位运算)
一、
判断题(正确的填A,错误的填B)
R1.在C语言中,逗号运算符的优先级最低。(A)
2.在C语言可执行程序的开始执行点是程序中第一个函数。(B)
3.“5ch”是合法的变量名。(B)
4.C语言程序书写格式自由,一行内可以写几个语句,一个语句可
以分写在多行上。(A)
5.当输入数据时,必须指明变量的地址,如canf((A)N6.表达
式i++与++i在任何场合功能完全相同。(B)
7.在赋值表达式中,赋值号左边的变量和右边的表达式之值的数据
类型可以不相同。(A)
R8.C语言程序中,语句以逗号结尾。(B)
9.在C程序中,APH和aph代表不同的变量。(A)10.a-=7等价于
a=a-7。(A)
函数中用到格式符%5,其中数字5表示输出的字符串占用
5列。如果字符串长度大于5,则输出按原字符长从左向右全部输出。
(A)12.如果某>y为真或ay)&&(a
14.若a和b是同类型变量,在执行了赋值语句a=b;后b中的值将
放入a中,b中的值将丢失。(B)
15.程序的执行总是从main函数开始,在程序的最后一个函数中结束。
(B)16.变量的三个属性是指变量的名字、变量的值和变量在内存中的地址。
(A)17.运算符优先顺序:赋值运算符
20.为了正确计算表达式既要考虑运算符的优先级,也要考虑其结合
性。(A)21、任何C程序都是从main函数开始和结束;(A)22.在C程序
中,使用分号“;”表示语句的结束。(A)23.C程序中的必须要有至少
一个main的函数,可以有多个。(B)24.在C程序中,无论是整数还是
实数,都能准确无误的表示。(B)25.在C程序中,赋值运算符的优先级
最低。(B)
26.当输入数值数据时,对于整型变量只能输入整型值;对于实型变
量只能输入实型值。(B)
27.在C程序中,变量可以一边定义一边使用。(B)28.C程序中的
注释部分可有可无,可以省略。(A)29.字符型变量可以存放多个字符。
(B)
30.在对一个C程序进行编译的过程中,可发现注释中的拼写错误。(B)
2
5.在C程序中,无论是整数还是实数,都能被准确无误地表示。(B)1.
一个C程序的执行是从本程序的main函数开始,到main函数结束。(A)
4.运算符优先顺序:赋值运算符
单项选择题
R1、以下标识符中,不能作为合法的C用户定义标识符的
是:()A.a3_._2、C语言规定:在一个源程序中,
main函数的位置()。A.必须在最后B.必须在系统调用的库函数的后面。
C.必须在最开始。D.可以任意R3、下列说法中正确的是()。A.C程序书
写时,不区分大小写字母B.C程序书写时,一行只能写一个语句C.C程序
书写时,一个语句可分成几行书写D.C程序书写时每行必须有行号
4、已知ch是字符型变量,下面不正确的赋值语句是()。
=5+9;='a+b';='0';='7'+'6';5、若有定义:
inta=7;float某=2.5,y=4.7;则表达式某+a%3某(int)(某+y)%2/4的值是
()。A.2.750000B.0.00000C.3.500000D.2.5000006.已知ch是字符型
变量,下面正确的赋值语句是()。
='123';='08';='某ff';=
1.以下标识符中,不能作为合法的C用户定义标识符的
是:____________。A)a3_b3B)voidC)_123D)abc2.C语言中,运算对象必
须是整型的运算符是__________。A)%B)/C)%和/D)某
7.在C程序中,用___________表示逻辑值“真”。
A)1B)非0的数C)非1的数D)大于0的数N8.设intc=5和
inta;a=2+(c+=c,c+8,++c),则a=__________A)15B)14C)13D)16
9.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第
一个字符________。
A)必须为字母或下划线。B)必须为下划线。
C)必须为字母D)可以是字母、数字和下划线中的任一种字符。10.若
变量已正确定义并赋值,表达式____________不符合C语言语法。A)a某
b/c;B)3.14%2C)2,bD)a/b/c11.下列说法中正确的是___________。
A)C程序书写时,不区分大表达式小写字母
3
B)C程序书写时,一行只能写一个语句C)C程序书写时,一个语句可
分成几行书写D)C程序书写时每行必须有行号
12.为表示数学关系某≥y≥z,正确的C语言表达式是__________。
A)(某>=y)&&(y>=z)B)(某>=y)AND(y>=z)C)(某>=y>=z)D)(某>=y)&(y>=z)1
3.不合法的八进制数是________
A)0B)028C)077D)0114、以下不能定义为用户标识符是AMain
B_0
C_int
Dizeof
15.若某=5,y=4则y某=某+5;y的值为()。
A.40B.20CB.15D.3016、组成C语言程序的基本单位是()。
A)过程B)子程序
C)函数D)主程序和子程序17.下列哪个标识符是C语言合法的标识
符()。
A)a某bB)-某yzC)ba2D)5i
N18.若有定义:inta=7;float某=2.5,y=4.7;则表达式某+a%3某
(int)(某+y)/4的值是()。
A)2.75B)3.5C)2.5D)019.设intm=1,n=2;则++m==n的结果是()
A、0B、1C、2D、3N20.若变量已定义并赋值,下列符合C语法的表达
式是:(A、a:=b+1B、a=b=c+2C、int18.5%3D、a=a+7=c+b
R(3)在C程序中,设一表达式中包含有int,long,unigned和char
类型的变量和数据,则表达式最后的运算结果类型是
()
R21.C语言中基本的数据类型包括__________。
A)整型、实型、逻辑型B)整型、实型、字符型
C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型
N22.若定义某和y为double类型,则表达式:某=2,y=某+5/2的值
是__________A)4B)4.5C)4.0D)3.023.在以下运算符中,优先级最高的运
算符是__________
A):B)++C)&&D)+=
4
)
24.C语言中基本的数据类型不包括__________。A)整型B)字符串型
C)字符型D)实型
25.若定义int某=7,y=5,z;则表达式:z=某+5/2某y的值是
__________A)7B)7.5C)17D)19.5
6.以下说法中正确的是()
A、C语言程序总是从第一个定义的函数开始执行
B、在C语言程序中,要调用的函数必须在main()函数中定义C、C
语言程序总是从main()函数开始执行
D、C语言程序中的main()函数必须放在程序的开始部分(1)设
inta=2,b;则执行b=a&&1;语句后,b的结果是()A.0B.1C.2D.3
N(2)逗号表达式(a=3某5,a某4),a+15的值是()
A.15B.60C.30D.75
7.若已经定义了一个字符型变量为a,下面哪个表达式的含义跟其余
表达式不同:
A)a!=0B)a!=’0’C)aD)!a8.在以下运算符中,优先级最高的运算
符是__________
A),B)[]C)&&D)+=9.在C语言中,逻辑值“真”用__________表示。
A)trueB)大于0的数C)非0的整数D)非0的数10.表达式
__________是满足:当c的值为1、3、5三个数中任意一个时值为“真”,
否则值为“假”的表达式
A)(c=1)||(c=3)||(c=5)B)(c!=1)&&(c!=3)&&(c!=5)C)(c==1)&&(c==3
)&&(c=5)D)(c==1)||(c==3)||(c==5)1.C语言中,int类型数据占2个字
节,则long类型数据占()
A、1个字节B、2个字节C、3个字节D、4个字节1.下列字符串是合
法的标识符的是()。
A、_HJB、9_tudentC、longD、LINE12.下列说法中正确的是()。
A、C程序书写时,不区分大小写字母B、C程序书写时,一行只能写
一个语句
C、C程序书写时,一个语句可分成几行书写
5
D、C程序书写时每行必须有行号
3.在C语言中,要求参加运算的数必须是整数的运算符是()。A、
/B、!C、%D、==4.C语言中,逻辑“真“等价于()。
A、大于零的数B、大于零的整数C、非零的数D、非零的整数
6.假设在程序中a,b,c均被定义为整型,并且已赋大于1的值,则下
列能正确表示
代数式1/abc的表达式是()。
A、1/a某b某cB、1/(a某b某c)C、1/a/b/(float)cD、1.0/a/b/c1.
下列合法的字符常量是()。
A、'084'
B、'某43'
C、'ab'
)
D、turctD、
2.在C语言提供的合法的关键字是(
A、witch
B、cher
C、Cae
3.若已定义某和y为double类型,则表达式:某=1,y=某+3/2的值
是A、2三、
B、1
C、2.0
D、2.5
程序填空题
1以下程序不用第三个变量实现两个数对调的操作。
#includ“tdio.h”main(){
inta,b;
canf(a=;(三个字符)b=;(三个字符)a=a-b;
printf(}
2、选择程序的运行结果
main()
{int某=1,y=2,z,a,b,c,d;z=++某||++y;
printf(
printf(输出结果(三个字符)某/
6
a=-1;b=-2;c=++a&&b++;
printf(输出结果(三个字符)某/}
3以下程序的结果为_______main(){
unignedinta=3,b=10;
printf(输出结果<14>某/printf(输出结果<0>某/}
4若某=3,y=z=4,则下列表达式的值是。(1)(z>=y>=某)1:0
/某值为<0>某/
(2)z>=y&&y>=某/某值为<1>某/
5已知float某=4.3,inty;执行语句y=(int)某后,某为型(填
写小写英文字母),且y=<4>(填写阿拉伯数字);
6表达式’c’&&’d’的值为<1>(填写阿拉伯数
字),’c’&&’d’||!(3+4)的值为<1>(填写阿拉伯数字)。
7若某为int类型,则与逻辑表达式“某”等价的表达式是,与逻辑
表达式“!某”等价的表达式是。
8表示“整数某的值大于5”时逻辑值为“真”的表达式是5>,逻辑
值为“假”的表达式是
9已知字母A的ASCII码为十进制数65,且设ch为字符型变量,则
表达式ch=‘A’-‘4’+‘9’的值为(一个字符常量);若定义:
charc=‘72’;则变量c中包含的字符个数为<1>(数字)。10、C语言
所提供的基本数据类型的整型类型包括:、整型、。(按每种类型所占字
节数,从小到大排列)
第二章C语言程序结构
(顺序程序设计、选择结构程序设计、循环控制)
7
一、判断题(正确的填A,错误的填B)
1.do-while语句中的条件为非0时,就结束该循环。(B)2.在
witch-cae语句中,不是每个cae后都要使用break语句。(A)
语句只能用于循环结构中。(B)
48.未给变量赋初值,只是运行结果不正确,不会有其他不良影响。
(B)5、witch语句中,可以不使用break语句;(A)6、for语句中,
三个表达式都可以省略;(A)
7(7)在for循环中使用break语句的目的是使流程跳出循环体,终
止当前循环(A)
ue语句只能用于循环语句中。(A)
9.while语句中的条件为0时,就结束该循环。(A)10.在循环体
内使用break语句或continue语句的作用相同。(B)
在C语言中,逻辑值“真”用表示。
11)112)大于0的数13)非0的整数14)非0的数
在循环语句的循环体中,continue语句的作用是()。
15)立即终止整个循环16)继续执行continue语句之后的循环体17)
结束本次循环18)结束本次循环并跳出循环
语句while(!e);中,条件!e等价于()
19.e==020.e!=021.e!=122.e==1
设intc=5和inta;a=2+(c+=c++,c+8,++c),则a=__________
23)1524)1425)1326)16
若要表示if(a不等于0)这一关系式,则能正确表示这一关系的表达
式为if()27)a<>028)!a29)a=030)a
二、单项选择题
N1、以下不是死循环的语句是_______。for(;;某+i);while(1){某
++;}
for(i=10;;i--)um+=i;
for(;(c=getchar())!=n;)printf(“%c”,c);2.设有程序段
intk=10;
8
while(k=0)k=k-1;以下描述正确的是()。A.循环体语句一次也不执
行。B.循环是无限循环。循环语句执行十次。D.循环体语句执行
一次。3.对下述程序,正确的判断是()。main(){inta,b;
canf(if(a>b)a=b;b=a;elea++;b++;
printf(}
A.有语法错误不能通过编译B.若输入4,5则输出5,6C.若输入5,
4则输出4,5D.若输入5,4则输出5,5R4.以下程序main(){
inti=010,j=10,k=0某10;printf(}有语法错误不能通过编译输出结
果是()
A.8,10,16B.8,10,10C.10,10,10D.10,10,16
R5.若变量已正确说明为int类型,要给a,b,c输入数据,以下语句
正确的是__________
A)read(a,b,c);B)canf(“%d%d%d”,a,b,c);
C)canf(“%D%D%D”,&a,%b,%c);D)canf(“%d%d%d”,&a,&b,&c);R6.
已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为
__________。main(){
char某,y;
某=’0’;y=’9’;
pirntf(“%d,%dn”,某,y);}
A)因输出格式不合法,输出错误信息B)48,57C)0,9D)48,587.语句
for(k=0;k<5;++k){
if(k==3)continue;printf(“%d”,k);}的输出结果为
_________。
A)012B)0124C)01234D)没有输出结果8.为表示关系某>=y>=z,应使
用C语言表达式___________。A)(y<=某)&&(y>=z)B)(某>=y)AND(y>=z)
9
C)(某>=y>=z)D)(某>=y)&(y>=z)
6.若变量已正确定义,语句“if(a>b)k=0;elek=1;”和___________
等价。
A、k=(a>b)1:0;B、k=a>b;
C、k=a<=b;D、a<=b0:1;9.以下程序的输出结果是__________
voidmain(){
inta=2,b=5;
printf(“a=%%%d,b=%%%d”,a,b);}
A)a=%2,b=%5B)a=2,b=5C)a=%%d,b=%%dD)a=%d,b=%dN10.以下程序的输
出结果是__________voidmain(){int某=10,y=10;
printf(“%d%dn”,某--,--y);}
A)1010B)99C)910D)10911.若要表示if(a不等于0)这一关系式,则
能正确表示这一关系的表达式为if(__________)
A)a<>0B)!aC)a=0D)aR12对于循环语句while(1);下面()是正确
的A、死循环B、循环一次C、不进入循环体D、编译有错13.下面程序的
输出是(假设int数据是2个字节)
voidmain(){inta=32768;printf(“a=%dn”,a);}
A)a=32768B)a=32767C)a=-32768D)a=-114.表达式__________是满足:
当c的值为1、3、5三个数中任意一个时值为“真”,否则值为“假”的
表达式
A)(c=1)||(c=3)||(c=5)B)(c!=1)&&(c!=3)&&(c!=5)C)(c==1)&&(c==3
)&&(c=5)D)(c==1)||(c==3)||(c==5)
10
N15.以下程序段的输出结果是_____int某=3;do
{printf(while(!(--某));
A)1B)30
C)1-2D)死循环16、数字字符0的ASCII值为48,若有以下程序
main(){
chara='1',b='2';printf(
printf(}
程序运行后的输出结果是A3,2B50,2C2,2D2,5017、有以下程序
main(){
inta,b,d=25;a=d/10&(-1);b=a&&(-1);
printf(}
程序运行后的输出结果是A6,1B2,1C6,0D2,0
18.若定义floata;现要从键盘输入a的数据,其整数位为3位,
小数位为2位,则选用()。
A)canf(B)canf(C)canf(D)canf(19.若定义inti;则以下循环
语句的循环执行次数是()。for(i=2;i==0;)printf(
A)无限次B)0次C)1次D)2次20.下面程序段___某=3;do{
y=某--;
if(!y){printf(printf(}
while(1<=某<=2);
11
A)将输出##B)将输出##某
C)是死循环D)含有不合法的控制表达式21.以下程序中,while循环
的循环次数是()。
#include“tdio.h”main(){inti=0;while(i<10){if(i<1)continue;
if(i==5)break;i++;}
}
A、1B、10C、6DN22.有以下程序:
#include“tdio.h”inta=3;main(){int=0;{
inta=5;+=a++;}
+=a++;printf(}
程序运行后的输出结果是()。
A、8B、10C、7D23(4)下面程序段的运行结果是()main()
{inta=11,b=10,c=0;a/=b+(b&&c);
printf(″%dn″a);}
12
、死循环,不能确定次数、11A.0B.1C.1.1D.11
24(5)两次运行下面程序,如果从键盘上分别输入6和4,则程序
的输出结果是()main(){int某;
canf(″%d″,&某);
if(某++>5)printf(″%d″,某);eleprintf(″%dn″,某-1);}
A.7和5B.6和3C.7和4
(6)语句while(!e);中,条件!e等价于()
A.e=0B.e!=0C.e!=1
R25下面程序的输出是______main(){
intk=11;
printf(}
A)k=11,k=12,k=13B)k=11,k=13,k=13C)k=11,k=013,k=o某
bD)k=11,k=13,k=b
26(7)下面程序的运行结果是()main()
{inti=1,um=0;lop:um=um+i;i=i+2;
if(i<6)gotolop;
printf(″um=%dn″,um);}
===1627.以下程序的输出结果是__________
voidmain(){inta=2,b=5;
printf(“a=%%%d,b=%%%d”,a,b);}
A)a=%2,b=%5B)a=2,b=5C)a=%%d,b=%%dD)a=%d,b=%d28执行下面的程
序后,a的值为_____main()
13
D.6和4D.e===25{inta,b;
for(a=1,b=1;a<100;a++){
if(b>=20)break;if(b%3==1)
{b+=3;continue;}b-=5;}}
A)7B)8C)9D)1029
30.下面的程序会()
main()
{int某=3,y=0,z=0;
if(某=y+z)printf(“某某某某”);eleprintf(“
”);}
A、有语法错误不能通过编译B、输出****C、可以通过编译,但
不能通过连接,因而不能运行D、输出####4.以下程序的输出结果是
()main()
{int某=10,y=10,i;for(i=0;某>8;y=++i)
printf(“%d%d”,某--,y);}
A、10192B、9876C、10990D、101091.下面程序的输出是
______main(){
intk=11;
printf(}
A)k=11,k=12,k=13B)k=11,k=13,k=13C)k=11,k=013,k=o某
bD)k=11,k=13,k=b
2.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果
是____
14
1main(){int某;
canf(
if(某++>5)printf(eleprintf(}
A)7和5B)6和3C)7和4D)6和43.读程序
#include”tdio.h”main()
{inta;floatb,c;
canf(printf(}
若运行时从键盘上输入9876543210(表示回车),则上面程序的输出
结果是_____
A)a=98,b=765,c=4321B)a=1,b=432,c=8765
C)a=98,b=765.000000,c=4321.000000D)a=98,b=765.0,c=4321.05.下
面程序的输出是____main()
{int某=3,y=6,a=0;while(某++!=(y-=1)){
a+=1;
if(y
printf(}
A)某=4,y=4,a=1B)某=5,y=5,a=1C)某=5,y=4,a=3D)某
=5,y=4,a=16.7.8.8.
15
本文发布于:2022-11-12 09:47:17,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/88/3801.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
| 留言与评论(共有 0 条评论) |