C语言期末考试选择题题库含答案.docx

上传人:b****3 文档编号:5315640 上传时间:2022-12-15 格式:DOCX 页数:27 大小:28.47KB
下载 相关 举报
C语言期末考试选择题题库含答案.docx_第1页
第1页 / 共27页
C语言期末考试选择题题库含答案.docx_第2页
第2页 / 共27页
C语言期末考试选择题题库含答案.docx_第3页
第3页 / 共27页
C语言期末考试选择题题库含答案.docx_第4页
第4页 / 共27页
C语言期末考试选择题题库含答案.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

C语言期末考试选择题题库含答案.docx

《C语言期末考试选择题题库含答案.docx》由会员分享,可在线阅读,更多相关《C语言期末考试选择题题库含答案.docx(27页珍藏版)》请在冰豆网上搜索。

C语言期末考试选择题题库含答案.docx

C语言期末考试选择题题库含答案

0001以下不是C语言规定保留字的是(B)。

A.floatB.integerC.signedD.unsigned

-------------------------------------------------------------------

0002设int型变量x有初始值3,则表达式x++*5/10的值是(B)

A.0B.1C.2D.3

------------------------------------------------------------------

0003下述程序段执行后的输出结果是(A )

intx='F';

printf("%c\n",'A'+(x-'A'+1));

A.GB.HC.ID.J

-----------------------------------------------------------------

0008以下合法的数组说明是(D)。

A.chara[6]="string";

B.inta[5]={0,1,2,3,4,5};

C.chara="string";

D.inta[]={0,12,3,4,5};

-----------------------------------------------------------------

0009下述程序代码中有语法错误的行是(D)。

inti,ia[10],ib[10];/*第1行*/

for(i=0;i<=9;i++)/*第2行*/

ia[i]=0;/*第3行*/

ib=ia;/第4行*/

A.第1行B.第2行C.第3行D.第4行

-----------------------------------------------------------------

0013以下符合语法规则的用户标识符是(C )。

 A.1stB.breakC.b757D.TwoWords

-----------------------------------------------------------------

0014以下叙述中不正确的是(D)。

A.在不同的函数中可以使用相同名字的变量

B.函数中的形式参数是局部变量

C.在一个函数内定义的变量只在本函数范围内有效

D.在一个函数内的复合语句中定义的变量在本函数范围内有效

----------------------------------------------------------------

0020以下不正确的转义字符是(D)。

A.'\\'B.'\"'C.'074'D.'\0'

---------------------------------------------------------------

0023以下叙述正确的是(D)。

A.do-while语句构成的循环不能用其他语句构成的循环来代替

B.do-while语句构成的循环只能用break语句退出

C.do-while语句构成的循环,在while后的表达式为非零时结束循环

D.do-while语句构成的循环,在while后的表达式为零时结束循环

---------------------------------------------------------------

0024若有以下程序片段

charstr[]="ab\n\012\\\"";

printf("%d\n",strlen(str));

则执行printf语句的输出结果是(A)。

A.6B.12C.3D.4

---------------------------------------------------------------

0028对于如下之程序段,应有(D)。

chara[10],b[]="china";

a=b;

printf("%s",a);

A.运行后将输出chinaB.运行后将输出ch

C.运行后将输出cD.程序出错,不能运行

--------------------------------------------------------------

0031决定C语言中函数返回值类型的是(D)。

A.return语句中的表达式类型

B.调用该函数的主调函数类型

C.调用函数时临时指定的类型

D.定义函数时在函数首部中所指定的类型

--------------------------------------------------------------

0032在C语言中,合法的整型常数是(A)

A.-0x123B.3.14159

C.01001101BD.6.7e10

------------------------------------------------------------

0039以下选项中属于C语言的数据类型是(C)。

A.复数型B.逻辑型

C.双精度型D.集合型

------------------------------------------------------------

0040设x和y均为int型变量,则下列语句

x+=y;

y=x-y;

x-=y;

的功能是(D)。

A.把x和y按从大到小排序B.把x和y按从小到大排序

C.无确定结果D.交换x和y的值

------------------------------------------------------------

0043在C语言中,变量所分配的内存空间大小(C)

A.均为一个字节

B.由用户自己定义

C.由变量的类型决定

D.是任意的

------------------------------------------------------------

0044执行以下程序的输出结果是(B)。

inti;

for(i='a';i<'i';i++,i++)

printf("%c",i);

A.编译不通过B.acegC.acegi(4)abcdefghi

------------------------------------------------------------

0045以下不形成死循环的是(D)。

A.for(;;x+=i);

B.while

(1)x++

C.for(i=10;;i--)sum+=i;

D.for(;(c=getchar())!

='\n';)printf("%c",c);

------------------------------------------------------------

0047若有以下定义和语句

chars[10];

s="ABCD";

printf("%s\n",s);

则结果是(D)。

A.输出ABCDB.输出A

C.输出ABCD.有语法错误,编译不能通过

------------------------------------------------------------

0048下列关于带初始赋值的字符数组说明中,错误的是(B)。

A.charstr[]={'T','u','r','b','o','','C','\0'};

B.charstr[7]="TurboC";

C.charstr[]="TurboC";

D.char*str="TurboC";

------------------------------------------------------------

0056若有说明:

chars1='\067';chars2="1";chars3='1';则s2中(D)。

A.包含1个字符B.包含2个字符

 C.包含3个字符D.无定值,说明不合法

------------------------------------------------------------

0058能将C语言编写的源程序转换成目标程序的是(B)。

A.编辑程序B.编译程序C.解释程序D.链接程序

-----------------------------------------------------------

0060执行下述程序的输出结果是(A)。

#include

intmain()

{

inta,b,c=246;

a=c/100%9;

b=(-1)&&(-1);

printf("%d,%d\n",a,b);

}

A.2,1B.3,2C.4,3D.2,-1

-----------------------------------------------------------

0063两次运行下述程序,如果从键盘上分别输入6和4,则输出结果是(A)。

#include

intmain()

{

intx;

scanf("%d",&x);

if(x++>5)

printf("%d\n",x);

else

printf("%d\n",x--);

}

A.7和5B.6和3C.7和4D.6和4

-----------------------------------------------------------

0067若inti;则以下循环语句的循环执行次数是(B)

for(i=2;i==0;)printf("%d",i--);

A.无限次B.0次C.1次D.2次

-----------------------------------------------------------

0080设有变量说明

intk=7,x=12;

则能使值为3的表达式是(D)。

A.x%=(k%=5)B.x%=(k-k%5)

C.x%=k-k%5D.(x%=k)-(k%=5)

-----------------------------------------------------------

0102若设n是个整型变量且已有值,则与给定条件表达式

(!

n)?

n+10:

n-10

等价的条件表达式是(C)。

A.(n!

=0)?

n+10:

n-10B.(n!

=1)?

n+10:

n-10

C.(n==0)?

n+10:

n-10D.(n==1)?

n+10:

n-10

------------------------------------------------------------

0104设有程序

#include

intmain()

{

intx=3,y=0,z=1;

if(x=y+z)

printf("****\n");

else

printf("####\n");

}

则以下叙述正确的是(A)。

A.程序有语法错误,不能通过编译

B.程序可执行,输出结果是****

C.程序可以通过编译,但是不能通过连接,因而不能运行

D.程序可执行,输出结果是####

------------------------------------------------------------

0111下述对于C语言字符数组的描述中错误的是(C)。

A.字符数组可以存放字符串

B.字符数组中的字符串可以整体输入、输出

C.可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值

D.不可以用关系运算符对字符数组中的字符串进行比较

------------------------------------------------------------

0115阅读程序

#include

intfunC(intB[],intn)

{

inti,r;

r=1;

for(i=0;i<=n;i++)

r=r*B[i];

return(r);

}

intmain()

{

intx,A[]={2,3,4,5,6,7,8,9};

x=funC(A,3);

printf("%d\n",x);

}

执行下述程序的输出结果是(B)。

A.720B.120C.24D.6

------------------------------------------------------------

0123已知intA=6;则执行A+=A-=A*A;语句后,A的值为D

A.36B.0C.-24D.-60

------------------------------------------------------------

0128若i、j已定义为int类型,则以下程序段中内循环体执行printf语句的总执行次数是(A   )。

 for(i=5;i;i--)

for(j=0;j<4;j++)

printf("OK.\n");

A.20B.24C.25D.30

------------------------------------------------------------

0133以下关于数组说明的描述中正确的是(C)。

A.数组的大小是固定的,但可以有不同类型的数组元素

B.数组的大小是可变的,但所有数组元素的类型必须相同

C.数组的大小是固定的,所有数组元素的类型必须相同

D.数组的大小是可变的,可以有不同类型的数组元素

------------------------------------------------------------

0146语句printf("%d\n",(A=2)&&(B=-2));则输出结果是(D)。

A.无输出B.结果不确定C.-1D.1

------------------------------------------------------------

0147设有如下的变量定义

inti=8,k,A,B;

unsignedlongw=5;

doublex=1.42,y=5.2;

则以下符合C语言语法的表达式是(A)。

A.A+=A-=(B=4)*(A=3)B.x%(-3)

C.A=A*3=2D.y=float(i);

------------------------------------------------------------

0150给出以下定义

charx[]="ABCDefg";

chary[]={'A','B','C','D','e','f','g'};

则正确的叙述为(C)。

A.数组x和数组y等价

B.数组x和数组y的长度相同

C.数组x的长度大于数组y的长度

D.数组x的长度小于数组y的长度

------------------------------------------------------------

0153下述描述中不正确的是(C)。

A.字符型数组中可以存放字符串

B.可以对字符型数组进行整体输入、输出

C.可以对整型数组进行整体进行输入、输出

D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值

------------------------------------------------------------

0158在计算机上可以直接运行的程序是写(C)

A.高级语言程序 B.汇编语言程序 C.机器语言程序 D.C语言源程序

------------------------------------------------------------

0163下列符号串中,合法的C.语言标识符是(A)

A._121   B.121_   C.a.121   D.#121

------------------------------------------------------------

0165下列符号串中,合法的十进制整型常量是(D)

A.09876  B.0x9876 C.9.876*e4D.-9876

------------------------------------------------------------

0166字符串"m\x43\\\np\102q"的长度是(A)

A.7B.9C.15D.16

------------------------------------------------------------

0168执行下列程序后的输出结果是(C)

intfun(intx1,intx2)

{intx;x1>x2?

(x=3):

(x=4);return(x+x1);}

intmain()

{printf("%d\n",fun(7,8));}

A.9B.10C.11D.12

------------------------------------------------------------

0175执行下列程序段后的输出结果是(C)

x=9;

while(x>7)

{printf("*");x--;}

A.****B.***C.**D.*

------------------------------------------------------------

0177能正确表达逻辑关系“-1<x<1并且-1<y<1”的表达式是(D)

A.(-1<x<1)&&(-1<y<1)

B.(-1<x<1)&(-1<y<1)

C.((-1<x)¦¦(x<1))&&((-1<y)¦¦(y<1))

D.(-1<x)&&(x<1)&&(-1<y)&&(y<1)

0179若整型变量x的值为8,则下列表达式中值为1的表达式是(B)

A.x+=x-=x=xB.x%=x-1C.x%=x%=3D.x/=x+x

-----------------------------------------------------------

0187已知x,y,z均为整型变量,且值均为1,则执行语句++x||y++&&z++;后,表达式x+y的值为(C)

A.1B.2C.3D.4

-----------------------------------------------------------

0188已知inta=1,b=1;则语句printf("%d\n",(a--,++b));的输出结果是(C)

A.2B.0C.1D.语句错误

-----------------------------------------------------------

0194以下叙述中错误的是A

A.对于double类型数组,不可以直接用数组名对数组进行整体输入或输出

B.数组名代表的是数组所占存储区的首地址,其值不可改变

C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出"下标越界"的出错信息

D.可以通过赋初值的方式确定数组元素的个数

------------------------------------------------------------

0201有以下程序段

chara[7]="A0\0A0\0";inti,j;

i=sizeof(a);j=strlen(a);

printf("%d%d\n",i,j);

程序运行后的输出结果是(C)

A.22B.76C.72D.62

------------------------------------------------------------

0202已知inta=6;则执行a+=a-=a*a;语句后,a的值为(D)

A.36B.0C.-24D.-60

------------------------------------------------------------

0205有以下程序段

intm=12,n=34;

printf("%d%d",m++,++n);printf("%d%d\n",n++,++m);

程序运行后的输出结果是(A)

A.12353514B.12353513C.12343514D.12343513

------------------------------------------------------------

0207数字字符0的ASCII值为48,若有以下程序

intmain()

{

charA=’1’,B=’2’;

printf("%c,",B++);

printf("%d\n",B-A);

}

程序运行后的输出结果是C

A.3,2B.50,2C.2,2D.2,50

------------------------------------------------------------

0208以下叙述中正确的是C

A.用C语言实现的算法必须要有输入和输出操作

B.用C语言实现的算法可以没有输出但必须要有输入

C.用C程序实现的算法可以没有输入但必须要有输出

D.用C程序实现的算法可以既没有输入也没有输出

------------------------------------------------------------

0209阅读以下程序,当输入数据的形式为:

25,13,10,正确的输出结果是(D)。

intmain()

{intx,y,z;

scanf(“%d%d%d”,&x,&y,&z);

printf(“x+y+z=%d\n”,x+y+z);}

A.x+y+z=48B.x+y+z=35

C.x+z=35D.不确定值

------------------------------------------------------------

0210一个C程序的执行是从(A)。

A.本程序的main函数开始,到main函数结束

B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C.本程序的main函数开始,到本程序文件的最后一个函数结束

D.本程序文件的第一个函数开始,到本程序main函数结束

------------------------------------------------------------

0211若x、i、j和k都是int型变量,则计算下面表达式后,x的值为(C)。

x=(i=4,j=16,k=32)

A.4

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1