c语言题库答案.docx

上传人:b****0 文档编号:25883882 上传时间:2023-06-16 格式:DOCX 页数:41 大小:37.43KB
下载 相关 举报
c语言题库答案.docx_第1页
第1页 / 共41页
c语言题库答案.docx_第2页
第2页 / 共41页
c语言题库答案.docx_第3页
第3页 / 共41页
c语言题库答案.docx_第4页
第4页 / 共41页
c语言题库答案.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

c语言题库答案.docx

《c语言题库答案.docx》由会员分享,可在线阅读,更多相关《c语言题库答案.docx(41页珍藏版)》请在冰豆网上搜索。

c语言题库答案.docx

c语言题库答案

()1、下列字符串属于标识符的是()。

A._WLB.3_3333C.intD.LINE-3

()2、在下面几组数据类型中,全为最常用的基本数据类型的是哪一组:

()。

A.整型实型字符型B.整型数组指针

C.数组结构体共用体D.指针逻辑型空类型

()3、若有说明语句:

charc=‘\64’;则变量C包含:

()。

个字符个字符

个字符D.说明不合法,C值不确定

()4、设有如下定义和执行语句,其输出结果为:

()。

inta=3,b=3;

a=--b+1;printf(“%d%d”,a,b);

2232

()5、C语言中,运算对象必须是整型数的运算符是()。

A.+B.*C.%D./

()6、C语言规定,C程序的各函数之间()。

A.允许嵌套调用,但不允许嵌套定义;B.不允许嵌套调用,但允许嵌套定义;

C.不允许嵌套调用,也不允许嵌套定义;D.允许嵌套调用,也允许嵌套定义。

()7、若有如下定义和语句:

则输出结果是:

()。

chars[12]=“Mybook”;

printf(“%d”,strlen(s));

()8、循环语句中的for语句,其一般形式如下:

for(表达式1;表达式2;表达式3)语句;其中表示循环条件的是()。

A.表达式1B.表达式2C.表达式3D.语句

()9、以数组作为函数的参数时传递的数组的首地址,那么实参数组与形参数组之间的数据传递方式为。

A.单向值传递B.地址传递C.双向值传递D.随机传递

()10、将字符串str2复制到字符串str1中应使用()。

(str1,str2)(str1,str2)(str1,str2)(str2,str1)

()11、若有以下定义:

inta[10],*p=a;则p+3表示的是()。

A.元素a[3]的地址B.元素a[3]的值C.元素a[4]的地址D.元素a[4]的值

()12、C语言中不能用来表示整常数的进制是()。

A.十进制B.十六进制C.八进制D.二进制

()13、用scanf函数输入一个字符串到数组str中,下面正确的语句是:

()。

(“%s”,&str);(“%c”,&str[10]);

(“%s”,str);(“%s”,str[10]);

()14、在说明一个结构体变量时系统分配给它的存储空间是()。

A.该结构体中第一个成员所需存储空间B.该结构体中最后一个成员所需存储空间

C.该结构体中占用最大存储空间的成员所需存储空间

D.该结构体中所有成员所需存储空间的总和

()15、下面程序的输出结果是:

()。

intm=13;

intfun(intx,inty)

{intm=3;

return(x*y-m);}

main()

{inta=7,b=5;

printf(“%d\n”,fun(a,b)/m);}

()1、C语言中要求运算必须是整形的运算符是()

A.%B./C.

()2、下列选项中那一项是不合法的用户标识符( )

A.ter3

()3、设inta=0,b=5;执行表达式a++和++b后,表达式a+b的值是()

()4、为表示关系x≥y≥z,应使用的C语言表达式是()

A.(x>=y)&&(y>=z)B.(x>=y)AND(y>=z)>=y>=zD.(x>=y)&(y>=z)

()5、若有x=15,y=40,m=100,执行了语句m=(x>y)x:

y;后,m的值为()

A.15B.40C.100D.

()6、若变量a,b,c为整型,要给三变量输入数据,正确的输入语句是()

(a,b,c);(“%d%d%d”,a,b,c);

(“%D%D%D”,&a,&b,&c);(“%d%d%d”,&a,&b,&c);

()7、以下程序段的输出结果是______。

  inta=1234;  printf("%2d\n",a);

                      D.提示出错、无结果

()8、以下for循环的执行次数是for(x=0;x<4;x++);()。

A.是无限循环B.循环次数不定次次

()9、下面程序段运行结果正确的是()

charc1=65,c2=66;printf(“%c,%c”,c1,c2);

B,98,B,98

()10、设有程序段,则下列描述中正确的是()

intk=10;while(k=0)k=k-1;

A.循环体执行10次B.循环是无限次循环C.循环体一次也不执行D.循环体执行一次

()11、C语言允许函数类型缺省定义,此时函数值隐含的类型是()。

()12、下面叙述中正确的是()。

  A.C语言程序总是从第一个定义的函数开始执行

B.C语言程序总是从main()函数开始执行

C.C语言程序中的main()函数必须放在程序的开始部分

D.一个C函数中只允许一对花括号

()13、下列正确的数组定义语句是()

a(2,3);a[2][]={1,2,3,4}

a[2][2]={{1,2,3},{8,7}};a[2][4]={1,2,3,4,5,6}

()14、.若有下列定义和语句,则对a数组元素的非法引用是()。

inta[2][3];

A.a[0][0]B.a[1][1]C.*(*(a+1)+2)D.a[2][3]

()15、.有以下程序段:

若inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a,b;

  b=p[5];  b中的值是______。

                         

()16、以下不能正确进行字符串赋初值的语句为______。

   str[5]="good!

"      str[]="good!

"

   *str="good!

"       str[5]={'g','o','o','d'}

()17、在说明语句:

int*f();中,标识符f代表的是______。

  A.一个用于指向整型数据的指针变量  B.一个用于指向一维数组的行指针

  C.一个用于指向函数的指针变量D.一个返回值为指针型的函数

()18、有以下定义:

不能给数组a输入字符串的语句是______

  #include<>

  chara[10],*b=a;

  A.gets(a);  B.gets(a[0]);  C.gets(&a[0]); D.gets(b);

()19、下面程序段的输出结果是______。

  main()  {charstrl[]=”string”;

  printf("%d\n",strlen(strl));}

  A.6   B.7    C.10    D.存在语法错误

()20、voidmain()

{structst{longnum;charname[20];};structstt1;

printf(“%d”,sizeof(t1);}

A.8  B.20C  C.24 D.38

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

main()

{charc1;

c1='A';

printf("%c,%d\n",c1,c1);}

A.E,68B.D,69C.A,65D.输出无定值

()2、程序运行的结果是()

main()

{inta=1,b=2;

if(a>b)printf("%d",a);

elseprintf("%d",b);}

B.2C.1

()3、以下程序输出结果是()

main()

{intx=2,a=1,b=1;

switch(x)

{case1:

a++;

case2:

b++;}

printf(“a=%d,b=%d”,a,b);}

=3,b=2=1,b=2=4,b=1=3,b=1

()4、有以下程序运行后的输出结果是()

main()

{inta=12;

printf(”%d\n”,a>10a+10:

a-12);}

()5、以下程序运行后的输出结果是()

main()

{inta,b=0;

for(a=1;a<=3;a++)

b+=a;

printf(”%d\n”,b);}

()6、以下叙述中错误的是()

语言函数可以嵌套定义。

语言函数可以嵌套调用。

语言函数可以递归调用。

D.main函数可以放在程序的开头

()7、以下关于函数形参和实参的叙述中正确的是()

A.函数的实参和其对应的形参共占同一存储单元

B.形参只是形式上的存在,不占用具体存储单元

C.同名的实参和形参占同一存储单元

D.函数的形参和实参分别占用不同的存储单元

()8、以下程序运行后的输出结果是(234)

fun()

{staticintx=1;

x++;

printf(”%3d”,x);}

main()

{inti,s;

for(i=1;i<=3;i++)

fun();}

()9、以下能正确定义数组并正确赋初值的语句是()

a[2]={1,2,3};B.intn=5,b[n][n];

c[2]={};d[2]={1,2};

()10、以下程序运行后的输出结果是()

A.1B.2C.10D.6

sub(intn)

{if(n>1) returnn-3;

elsereturnn+3;}

main()

{printf(“%d”,sub(5);}

()1、以下叙述不正确的是() 

A.一个C源程序可由一个或多个函数组成 

B.一个C源程序必须包含一个main函数 

程序的基本组成单位是函数 

D.在C程序中,注释说明只能位于一条语句的后面

()2、设变量a=2,f=,i=型,则表达式10+a*f-i值的为()

A.14.6  D.不确定

()3、若运行时给变量x输入12,则以下程序的运行结果是()

main()

{intx,y;

scanf("%d",&x);

y=x>12x+10:

x-12;

printf("%d\n",y); }

   

()4、 下列说法中错误的是() 

A.只能在循环体内使用break语句 

B.在循环体内使用break语句可以使流程跳出本层循环体,从而提前结束本层循环 

C.在while和do…while循环中,continue语句并没有使整个循环终止 

的作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环判断

()5、若有说明:

inta[][3]={1,2,3,4,5,6,7,8,9};则a数组第一维的大小是

   D.无确定值

()6、下面程序输出的结果是()

main()

{inti;

inta[3][3]={1,2,3,4,5,6,7,8,9};

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

printf("%d",a[i][i]);}

59 53 57 91

()7、已知:

charb[20]="defghi";则执行下列语句后的输出结果为()

printf("%d",strlen(b));

   D.以上答案都不正确

()8、阅读下列程序,则执行后的结果为() 

#include "" 

main() 

{ int c[][4]={{1,2,3,4},{5,6,7,34},{213,56,62,3},{23,12,34,56}}; 

printf("%d,%d\n",c[0][0],*(*(c+1)+1)); } 

6 ,5 ,5 ,6 

()9、以下程序段的描述,输出的结果是() 

x=5; 

do 

{pritf(“%d”,x);x--:

while(x>3); 

4 43  432 4321

()10、对以下说明语句的正确理解是()

inta[10]={6,7,8,9,10};

A.将5个初值依次赋给a[1]至a[5]B.将5个初值依次赋给a[0]至a[4]

C.将5个初值依次赋给a[6]至a[10]

D.因为数组长度与初值的个数不相同,所以此语句不正确

()语言中不能用来表示整常数的进制是()。

A.十进制B.十六进制C.八进制D.二进制

()语言规定标识符由()等字符组成。

A.字母数字下划线B.中划线字母数字

C.字母数字逗号D.字母下划线中划线

()3、以下表达式:

2+’a’+i*f,其中i为整型变量,f为float型变量,则表达式的最终数据类型为()。

()4.设有如下定义

intx=10,y=5,z;

则语句printf("%d\n",z=(x+=y,x/y));的输出结果是()。

()5.设有如下定义:

charch=’z’,则执行下面语句后变量ch是值为:

()。

ch=(‘A’<=ch&&ch<=‘Z’)(ch+32):

ch

()6.若x和y都为float型变量,且x=,y=执行下列语句后输出结果为:

()。

printf(“%f”,(x,y));

D.输出符号不够,输出不正确值

()7.设有两字符串“Beijing”、“China”分别存放在字符数组str1[10],str2[10]中,下面语句中能把“China”连接到“Beijing”之后的为:

()。

(str1,str2);(str1,“China”);

(str1,“China”);(“Beijing”,str2);

()8.以下对一维整型数组a的正确说明是()。

a(10);n=10,a[n];

n;scanf(“%d”,&n);inta[n];

D.#defineSIZE10inta[SIZE];

()9.设有如下程序段,则其执行结果为:

()。

staticinta[]={1,2,3,4},*p;inti;

p=a;printf(“%d”,*(p+3));

[3]地址D.不正确的值

()10、若二维数组a有m列,则a[I][j]元素前的数组元素个数为:

()。

*m+i*m+j*m+j-1*m+j+1

()11、C语言中变量的指针指的是:

()。

A.变量类型B.变量值C.变量值D.变量地址

()12、下面有关for循环的正确描述是()。

循环只能用于循环次数已经确定的情况

循环是先执行循环体语句,后判断表达式

C.在for循环中,不能用break语句跳出循环体

循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

()13、C语言规定:

在一个源程序中,main函数的位置()。

A.必须在最开始B.必须在系统调用的库函数的后面

C.可以在任意位置D.必须在源文件的最后

()14、在C语言程序中,若未在函数定义时说明函数类型,则函数默认的类型为:

()。

()15、在说明一个结构体变量时系统分配给它的存储空间是()。

A.该结构体中第一个成员所需存储空间

B.该结构体中最后一个成员所需存储空间

C.该结构体中占用最大存储空间的成员所需存储空间

D.该结构体中所有成员所需存储空间的总和

()1、下列字符串是标识符的是()。

A._HJB.9_studentC.longD.LINE1

()2、下列说法正确的是()。

A.main函数必须放在C程序的开头B.main函数必须放在C程序的最后

C.main函数可以放在C程序的中间部分,但在执行C程序时是从程序开头执行的

D.main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的

()3、C语言中不能用来表示整常数的进制是()。

A.十进制B.十六进制C.八进制D.二进制

()4、设d为字符变量,下列表达式正确的是()。

A.d=678B.d=’a’C.d=”d”D.d=’gjkl’

()5、判断字符型变量ch为大写字母的表达式是()。

A.’A’<=ch<=’Z’B.(ch>=’A’)&(ch<=’Z’)

C.(ch>=’A’)&&(ch<=’Z’)D.(ch>=’A’)AND(ch<=’Z’)

()6、C语言中,要求运算对象必须是整型的运算符是:

()。

A.>B.++C.%D.!

=

()7、写出下面程序的执行结果()。

main()

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

if(z<0)

if(y>0)x=3;

elsex=5;

printf("%d\t",x);}

A.1B.3C.5D.7

()8、若i,j已定义为int型,则以下程序段中循环体的总的执行次数是()。

for(i=1;i<=4;i++)

for(j=1;j<=5;j++)

{}

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

()9、下面程序的输出结果是:

()。

intm=2;

intfun(intx,inty)

{intm=3;

return(x*y-m);}

main()

{inta=3,b=5;

printf(“%d\n”,fun(a,b)/m);}

A.1B.2C.6D.10

()10、以下能对二维数组a进行正确说明和初始化的语句是:

()。

A.inta()(3)={(1,0,1),(2,4,5)};

B.inta[2][]={{3,2,1},{5,6,7}};

C.inta[][3]={{3,2,1},{5,6,7}};

D.inta

(2)()={(1,0,1),(2,4,5)};

()11、设有charstr[10],下列语句正确的是()。

A.scanf("%s",&str);B.printf("%c",str);

C.printf("%s",str[0]);D.printf("%s",str);

()12、执行以下程序段后,a的值是()。

inta[]={5,3,7,2,1,5,4,10};

ints=0;k;

for(k=0;k<3;k++)

s+=a[k];

A.8B.15C.17D.18

()13、变量的指针,其含义是指该变量的()。

A.值B.地址C.名D.一个标志

()14、以下对一维整型数组a的初始化正确的是()。

A.inta(4)={1,2,3,5};B.inta[4]={1,2,3,4,6,7};

C.inta[4]={1468};D.inta[4]={1,4,6,8}

()15、若有以下说明和语句:

structworker

{intno;char﹡name;}work,﹡p=&work;

则以下引用方式不正确的是()。

A.work.noB.(﹡p).noC.p->noD.work->no

二、判断题()

(√)1、在C语言程序中,AHP和ahp分别代表两个不同的标识符。

(√)2、C程序有三种结构化程序设计方法,分别顺序结构、选择结构和循环结构。

(╳)3、在if语句中,if子句与else子句都可以单独使用,构成了if语句的两种缺省形式。

(╳)4、for语句作为循环控制语句时,其括号内各个表达式及其后的分号都可缺省。

(╳)5、数组在定义时没有必要指定数组的长度,其长度可以在程序中根据元素个数再决定。

(╳)6、C语言中while和do-while循环的主要区别是while语句的循环体至少会被执行一次,而do-while语句的循环体则可能一次也不执行。

(√)7、数组首地址不仅能通过数组中第一个元素的地址表示,也可以通过数组名来表示。

(╳)8、在C语言中,只有在两个字符串所包含的字符个数相同时,才能比较大小。

如字符串“That”与“The”就不能进行大小比较。

(╳)9、函数的返回值类型是由函数的类型和return语句中表达式的类型共同决定的,当这两类型不一致时最终起决定作用的是return中表达式的类型。

(√)10、文件按数据存储形式分为文本文件和二进制文件。

(√)1、在C语言程序中,happy是正确的标识符。

(╳)2、在C语言的if语句中,else可以单独出现。

(√)3、在C程序中一行内可以写几个语句,一个语句可以分写在多行上。

但每一条C语句都必须有一个分号的。

(√)4、在C语言的if语句中,用作条件判断的表达式可以是C语言中任意合法的表达式。

(╳)5、在C语言中,函数strcpy是用来连接字符串的。

(√)6、for语句作为循环控制语句时,三个表达式可以省略其中的一个、两个或三个,但分号不可少。

(√)7、数组名也可作为函数参数使用,此时是地址传递。

(╳)8、C程序有三种结构化程序设计方法,分别嵌套结构、选择结构和循环结构。

(╳)9、数组在定义时没有必要指定数组的长度,其长度可以在程序中根据元素个数再决定。

(√)10、C程序的三种结构化程序设计方法分别顺序结构、选择结构和循环结构。

(╳)1、C程序可以由若干个源文件组成,因此最小的功能单位是源文件,最小编译单位的是函数。

(√)2、C语言的三种基本数据类型为整型、实型、字符型。

(╳)3、在if语句中,if子句与else子句都可以单独使用,构成了if语句的两种缺省形式。

(╳)4、for语句作为循环控制语句时,其括号内各个表达式及其后的分号都可缺省。

(√)5、C程序中函数不可以嵌套定义但可以嵌套调用。

(√)6、数组名也可作为函数参数使用,此时数组名代表数组的起始地址。

(√)7、在函数内的复合语句中定义的变量在本复合语句内有效。

(√)8、打开文件所用的函数为fopen函数。

(╳)9、逗号运算符的优先级比赋值运算符高。

(╳)10、链表中的各节点在内存中占连续的存储空间依次存放。

(√)1、表达式25+’a’+*’c’执行后输出结果是双精度类型的数据。

 

························装·······················订························密························封························线······

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

当前位置:首页 > 经管营销 > 经济市场

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

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