C语言开发基础练习题及答案6-2023练习版_第1页
C语言开发基础练习题及答案6-2023练习版_第2页
C语言开发基础练习题及答案6-2023练习版_第3页
C语言开发基础练习题及答案6-2023练习版_第4页
C语言开发基础练习题及答案6-2023练习版_第5页
已阅读5页,还剩126页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

试题说明

本套试题共包括1套试卷

答案和解析在每套试卷后

C语言开发基础练习题及答案6(500题)

C语言开发基础练习题及答案6

L[单选题]已知程序段:

unionww

(

inti;

charc

}temp;

temp,i=23;

则temp,c的值是o

A)3

B)23

C)2

D)0

2.[单选题]以下代码的输出结果是()int[]age=newintL]{16,18,20,14,22);foreach(inti

inage){if(i>18)continue;Console.Write(i.ToString()+,,");)

A)1618201422

B)16181422

C)161814

D)1618

3.[单选题]有以下程序:#includefloatfun(doublea){doublex;x=a-(int)a;returnx;}

main(){doublea=3.1415;printf("%f∖n",fun(a));}程序的运行结果是()。

A)3.OOOOOO

B)3.141500

C)0.141500

D)0.000000

4.[单选题]下列正确的标识符是()。

A)-al

B)aLi]

C)a2_i

D)intt

5.[单选题]已有定义''inta[3][2]={l,2,3,4,5,6};",数组元素的值为6。

A)A[3][2]

B)A[2][1]

C)A[1]⑵

D)A⑵[3]

6.[单选题]以下选项中,能用作用户标识符的是()。

A)0

B)88

C)void

D)unsigned

7.[单选题]已有数据类型定义和变量声明如下:

Structperson

{intnum;charname[20],sex;

Struct{intclass;charprof[20];}in;

}a={18,"Lina",'M',{101,"english"}},*p=&a;

下列语句中正确的是O

A)Printf("%s",a->name);

B)Printf("%s",p->in.prof);

C)Printf("%s",*p.name);

D)Printf("%c",p->in->prof);

8.[单选题]有以下程序段#include<stdio.h>main(){∙∙∙while(getchar()!="∖n');∙∙∙|以

下叙述中正确的是()。

A)此While语句将无限循环

B)getchar()不可以出现在WhiIe语句的条件表达式中

O当执行此WhiIe语句时,只有按回车键程序才能继续执行

D)当执行此WhiIe语句时,按任意键程序就能继续执行

9.[单选题]设inta=12,则执行完语句a+=a-=a*a后,a的值是__

A)552

B)264

0144

D)-264

10.[单选题]以下常量中,能够代表逻辑“真”值的常量是。。

A)∖0,

B)0

OO'

D)NULL

IL[单选题]设有定义:intb=0;,表达式与其它表达式的值不相同。

A)b+=1

B)b++

C)++b

D)b+1

12.[单选题]若以下选项中的变量已正确定义,则正确的赋值语句是o

A)xl=26.8%3;

B)l+2=x2;

C)x3=0xl2;

D)x4=l+2=3;

13.[单选题]若有定义语句:CharC[5]={'a','b','∖0','c','\0'};,则执行语句

Pritnf("%s",c);的结果是

A)ab

B)ab∖0c

C)'a,'b,

D)ab

14.[单选题]下列关于软件测试的目的和准则的叙述中,正确的是()。

A)软件测试是证明软件没有错误

B)主要目的是发现程序中的错误

C)主要目的是确定程序中错误的位置

D)测试最好由程序员自己来检查自己的程序

15.[单选题]有如下程序,该程序的执行结果是()。main(){inti,sum;for(i=l;i

A)6

B)3

C)死循环

D)0

16.[单选题]设整型变量a=2,则执行下列语句后,浮点型变量b的值不为0.5的是()

A)b=l.0/a

B)b=(float)(l∕a)

C)b=l∕(float)a

D)b=l∕(a*l.0)

17.[单选题]下列关于二叉树的叙述中,正确的是()。

A)叶子结点总是比度为2的结点少一个

B)叶子结点总是比度为2的结点多一个

C)叶子结点数是度为2的结点数的两倍

D)度为2的结点数是度为1的结点数的两倍

18.[单选题]C语言程序中,当调用函数时().

A)实参和虚参各占一个独立的存储单元

B)实参和虚参可以共用存储单元

C)可以由用户指定是否共用存储单元

D)计算机系统自动确定是否共用存储单元

19.[单选题]若有定义:

staticinta[3][4]={0};

则下面正确的叙述是—O

A)只有a[0][0]值为O

B)此说明语句不正确

C)所有元素值不一定为零

D)所有元素值均为零

20.[单选题]有以下程序ttinclude<stdio.h>main(){chara[30],b[30];scanf("%s",a);

gets(b);printf("%s∖n%s∖n",a,b);}程序运行时若输入:howareyou?Iamfine〈回车>则

输出结果是OO

A)howareyou?

B)howareyou?Iamfine

C)howareyou?Iamfine

D)howareyou?

21.[单选题]关于函数返回值,下面叙述中正确的是

A)函数返回值的类型由函数体内return语句包含的表达式的类型决定

B)若函数体内没有return语句,则函数没有返回值

C)若函数体中有多个return语句,则函数的返回值是排列在最后面的retun语句中表

达式的值

D)函数返回值的类型由函数头部定义的函数类型决定

22.[单选题]C语言函数体使用一对O将构成函数的语句括起来。

A)<'和

B)('和')'

C){,和9'

D)['和1

23.[单选题]若有下列定义,贝U对a数组元素地址的正确引用是Oointa[5],*p=a;

A)fta[5]

B)p+2

C)a++

D)&a

24.[单选题]TurboC中,基本数据类型存储空间长度的排列顺序是O

A)char<int<longint<float<double

B)char=int<longint<float<double

C)char<int<longint<float=double

D)char=int<longint<float=double

25.[单选题]设x、y和Z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是

A)'x'&&'y'

B)x<=y

C)XIy+z&&y-z

D)!((x))

26.[单选题]C语言程序总是从开始执行。

A)第一条语句

B)第一个函数

C)main函数

D)ttinclude<stdio.h>

27.[单选题]以下所列的C语言常量中,错误的是()。

A)0xFF

B)1.2e0.5

02.0

D)'∖72'

28.[单选题]设有intn=10;,执行下面语句后,则输出结果是_____。

While(n>8)

(

N-;

Printf("%d

",n);

)

A)1098

B)98

C)9

D)109

29.[单选题]有如下程序段:

Charstr[14]={"Iam");

Strcat(str,"sad!");

Cin>>str;

Cout<<str;

当输入为happy!<CR>时,输出的结果是()。

A)Iamsad!

B)happy!

C)Iamhappy!

D)happy!ad!

30.[单选题]设C语言中,一个int型数据在内存中占2个字节,则UnSignedint型数据的取值范围为:

A)O〜255

B)O〜32767

00~65535

D)O〜2147483647

31.[单选题]一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与

实体计算机之间的联系是()。

A)一对一

B)一对多

C)多对多

D)多对一

32.[单选题]以下程序的运行结果是#includeintmain(){inta=12,b=3;floatX=18.5,

y=4.5;printf("%f∖n",(float)(a*b)/2);printf("%d∖n",(int)x%(int)y);return0;)

A)182.000000

B)182

C)18.0000002.000000

D)18.0000002

33.[单选题]下面关于for循环说法错误的是O

A)在for循环中,步长为1,可以省略不写,若为其它值,则不可省略

B)在for循环中,循环表达式也称为循环体

C)for循环中的变量有且仅有一个

D)for循环中的“单次表达式”、“条件表达式”和“循环体语句”都是选择项,即可以缺省只剩下

“;”的空语句

34.[单选题]应用缓冲文件系统对文件进行读写操作,打开文件的函数名为().

A)open

B)fopen

C)close

D)fclose

35.[单选题]以下程序的输出结果是()。

ttinclude<stdio.h>

main()

{inti;

for(i=l;i<5;i++)

{if(i%2)

printf(''+'')

else

continue;

printf(''-'')

)

printf(''$∖n'');

)

A)+-+-+-$

B)→→→$

C)+→-$

D)→→$

36.[单选题]若有以下程序#includemain0{inta=-2,b=0;do{++b;}while(a++);

printf("%d,%d∖n",a,b);)则程序的输出结果是()。

A)2,3

B)0,2

01.2

D)l,3

37.[单选题]下面关于函数的叙述中正确的是

A)在函数体中可以直接引用另一个函数中声明为Statie类别的局部变量的值

B)在函数体中可以调用函数自身

C)在函数体中可以定义另一个函数

D)在函数体中至少必须有一个return语句

38.[单选题]假定有变量定义intk=7,x=12;,则能使值为3的表达式是()。

A)x%=(k%=5)

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

C)x%=k-k%5

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

39.[单选题]运行以下程序后,如从键盘上输入China#,则输出为()。

Sinclude"stdio.h"

MainO

(

Intvl=0,v2=0;

Charch;

While((ch=getchar())!='#')

switch(Ch)

casea

Case'h':

Default:vl++;

Case'o':v2++;

}

Printf(w%d,%d∖nw,vl,v2);

}

A)2,0

B)5,0

C)5,5

D)2,5

40.[单选题]已有定义“inti,a=l;unsignedj;”,则下列语句执行时会出现无限循环的语句是

A)For(j=15;j>0;j-=2)a++;

B)For(j=0;j<15;j+=2)a++;

C)For(i=0;i<15;i+=2)a++;

D)For(i=15;i>0;i-=2)a++;

4L[单选题]以下对结构体类型变量的定义中,不正确的是。。

A)typedefstructaa{intn;AAfloatm;}AA;

B)^defineAAstructaa{intn;floatm;}tdl;AAtdl;

C)struct{intn;floatm;}aa;stuctaatdl;

D)struct{intn;floatm;}tdl;

42.[单选题]下列选项中可用作变量名的是()

A)Case

B)a-b

C)$cd

D)2ab

43.[单选题]下列关于C语言程序的叙述错误的是

A)一个C语言程序由一个或多个函数组成

B)注释内容必须放在/*和*/之间

C)编译时注释部分的错误会被发现

D)可以在“{}”内写若干语句,构成复合语句

44.[单选题]对于一个正常运行的C程序,以下叙述中正确的是

A)程序的执行总是从main函数开始,在程序的最后一个函数中结束

B)程序的执行总是从程序的第一个函数开始,在main函数结束

C)程序的执行总是从main函数开始

D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束

45.[单选题]若已定义:inta=5;floatb=l.5;则表达式a+b*10∕3的值为()。

A)6

B)6.5

09.5

D)10

46.[单选题]若已定义CharsL10];在下面表达式中不能表示s[l]的地址的是()。

A)s+1

B)s++

C)½s[O]+l

D)⅛s[l]

47.[单选题]设有inta=3,b=4;,以下不合法的C语言语句是___。

A)a=b==4;

B)a=b%3.5;

C)a=b=4;

D)a+=a+3;

48.[单选题]已知chara;使用SCanf()函数输入一个字符给变量a,不正确的函数调用是

A)scanf("%d",&a);

B)scanf("%lf",&a);

C)scanf("%c",&a);

D)scanf("%u",&a);

49.[单选题]以下数组定义中不正确的是。。

A)int

B)int

C)int

D)int

50.[单选题]C语言中,数组名作为函数调用的实参时,下面叙述正确的是()。

A)传递给形参的是数组元素的个数

B)传递给形参的是数组第一个元素的值

C)传递给形参的是数组中全部元素的值

D)形参数组中各元素值的改变会使实参数组相应元素的值同时发生变化

51.[单选题]执行下面的程序段后,变量k中的值为intk=3,s[2];s[θ]=k;k=s[1]*10;

A)33

B)10

C)30

D)不定值

52.[单选题]下面选项中对一维数组m进行正确初始化的是

A)intm[4]=(l,1,1,1);

B)intm[4]={};

C)intm[]={0};

D)intm[4]={4*2};

53.[单选题]下列关于枚举的说法,错误的是()

A)枚举是一个指定的常量

B)枚举表示一组有限的值

C)枚举中可以有自己的方法

D)可以为枚举类型中元素赋整数值

54.[单选题]下列程序段的输出是

Intc[]={l,3,5);

Int*k=c+l;

Printf(""%d"",*++k);

A)3

B)4

05

D)6

55.[单选题]判断字符串a和b是否相等,应当使用()

A)if(a==b)

B)if(a=b)

C)if(strcpy(a,b))

D)if(strcmp(a,b)==0)

56.[单选题]下面描述中错误的是()。

A)系统总体结构图支持软件系统的详细设计

B)软件设计是将软件需求转换为软件表示的过程

C)数据结构与数据库设计是软件设计的任务之一

D)PAD图是软件详细设计的表示工具

57.[单选题]已知Ch是字符型变量,下面正确的赋值语句是()。

A)ch='a+b';

B)ch='∖0';

C)Ch='7'+‘9';

D)ch=5+9;

58.[单选题]已有变量定义和函数调用语句inta=25;Print_value(&a);下

面函数输出的正确结果是。

voidprint_value(int*x)

{printf("%d∖n",++*x);)

A)23

B)24

C)25

D)26

59.[单选题]C语言源程序名的后缀是

A)C

B)exe

C)obj

D)cp

60.[单选题]设有定义语句int(*f)(int);,则以下叙述正确的是。

A)f是基类型为int的指针变量

B)f是指向函数的指针变量,该函数具有一个int类型的形参

C)f是指向int类型一维数组的指针变量

D)f是函数名,该函数的返回值是基类型为int类型的地址

61.[单选题]设有数组定义:chararray[]="China";,则数组array所占的空间为().

A)4个字节

B)5个字节

06个字节

D)7个字节

62.[单选题]以下选项中合法的用户标识符是。

A)long

B)_2Test

C)3Dmax

D)Λ.dat

63.[单选题]已知a、b、C为int类型变量,若有输入语句:seanf("a=%db=%dc=%d",&a,&b,&c);为使a值

为Lb值为3,c值为2,从键盘输入数据的正确形式应当是.

A)132<回车>

B)a=lb=3c=2<回车〉

C)I〈回车>3〈回车>2〈回车>

D)a=l<回车>b=3<回车>c=2<回车>

64.[单选题]设有以下定义:structsk{inta;floatb;}data;int*p;若要使P指向data中的a域

,则正确的赋值语句是()。

A)P=&a;

B)p=data.a;

C)p=⅛data.a;

D)*p=data.a;

65.[单选题]有以下程序

ttinclude<stdio.h>

MainO

(

Charp□[10]={"abc","aabdfg","dcdbe","abbd","cd"};

Printf("%d∖n",strlen(p[4]));

)

程序的运行结果是O

A)2

B)3

04

D)5

66.[单选题]以下选项中的编译预处理命令行,正确的是_

A)WefineintINT

B)##defineepsO.OOl

C)UDEFINETRUE

D)ftdefinePI3.14

67.[单选题]以下二维数组C的定义形式是

A)intc[3]口

B)floatc

C)doublec[3][4]

D)floatc(3)(4)

68.[单选题]当变量C的值不为2、4、6时,值也为“真”的表达式是()。

A)(c==2)(c==4)(c==6)

B)(C>=2&&c<=6)(c!=3)(c!=5)

C)(c>=2&&c<=6)&&!(c%2)

D)(c>=2&&c<=6)&&(c%2!=l)

69.[单选题]设Ch是Char型变量,其值为C,且有下面的表达式

Ch=(ch>='A'&&ch<='Z')?(ch+32):ch

上面表达式的值是_____O

Λ)C

B)c

OZ

D)z

70.[单选题]以下关于函数的叙述中正确的是()。

A)每个函数都可以被其它函数调用(包括main函数)

B)每个函数都可以单独运行

C)每个函数都可以被单独编译

D)在一个函数内部可以定义另一个函数

71.[单选题]若有指针变量fp已指向Char型变量X,正确的输入语句是。。

A)SCanf("%c",&fp);

B)SCanf("%d",fp);

C)scanf("%c",*fp);

D)scanf(rt⅜c",fp);

72.[单选题]算法中对需要执行的每一步操作,必须给出清楚、严格的规定,这属于算法的

A)正当性

B)可行性

C)确定性

D)有穷性

73.[单选题]执行"printf("%x",100);"后的输出结果是()

A)100

B)0x100

00X64

D)64

74.[单选题]设有inta=3,b=4,c=5;则下面的表达式中,值为0的表达式是___。

A)'a'fe⅛'b'

B)!((a<b)&&!Cl1)

C)a<=b

D)aIb+c&feb-c

75.[单选题]若变量已正确定义并赋值,下面符合C语言语法的表达式是OO

A)a:=b+1

B)a=b=c+2

C)(int)(18.5%3)

D)a=a+7=c+b

76.[单选题]使用C语言编写得到的源文件经过编译、链接后生成可执行文件,可执行文件的后缀名

是()。

A)c

B)obj

C)exe

D)doc

77.[单选题]以下对一维整型数组a的正确说明是()。

A)inta(10);

B)intn=10,a[n];

C)intn;scanf("%d”,&n);inta[n];

D)WefineSIZEIOinta[SIZE];

78.[单选题]以下程序的输出结果是()

Main()

{charc='zl;printf("%c",c-25);}

A)a

B)Z

C)z-25

D)c-25

79.[单选题]以下程序的运行结果是x=y=O;while(x<15)y++,x+=++y;Printf("%d,%d”,y,x);

A)20,7

B)6,20

C)20,8

D)8,20

80.[单选题]定义数组:ints[10];则数组元素下标的取值。。

A)0-10

B)l-9

00-9

D)1212122022年1月100

81.[单选题]设a,b,c,d均是int类型变量,为了使以下程序段的输出为:1234+123+12+1,正确的输入形

式应当是______o

Scanf("%4d+%3d+%2d+%ld",&a,&b,&c,&d);

Printf("%4d+%3d+%2d+%ld",a,b,ɛ,d);

A)123412312"回车>

B)1234123412341234<回车>

C)1234+1234+1234+1234<回车>

D)1234+123+12+k回车>

82.[单选题]有以下程序:Sincludemain(){inta,b,c;a=10;b=50;c=30;if(a>b)

a=b,b=c;c=a;printf(ua=%db=%dc=%d∖n”,a,b,c);}程序运行后的输出结果是()。

A)a=10b=50c=30

B)a=10b=50C=IO

C)a=10b=30c=10

D)a=50b=30c=50

83.[单选题]C语言可执行程序的开始执行点是

A)程序中第一条可执行语句

B)程序中第一个函数

C)程序中的main函数

D)包含文件的第一个函数

84.[单选题]已知Ch是字符型变量,下面不正确的赋值语句是。

A)ch='a+b';

B)ch=1\0';

C)ch='7'+'9';

D)ch=5+9

85.[单选题]()o关于运算符优先顺序的描述正确的是.

A)关系运算符‹算术运算符〈赋值运算符〈逻辑运算符

B)逻辑运算符〈关系运算符‹算术运算符〈赋值运算符

C)赋值运算符<逻辑与运算符〈关系运算符‹算术运算符

D)算术运算符〈关系运算符〈赋值运算符〈逻辑与运算符

86.[单选题]若有以下语句,则正确的描述是Chara口="toyou";char

b口=Vt'y'u'};

A)a数组和b数组的长度相同

B)a数组长度小于b数组长度

Oa数组长度大于b数组长度

D)a数组等价于b数组

87.[单选题]下列叙述中错误的是____o

A)计算机不能直接执行用C语言编写的源程序

B)C程序经C编译程序编译后,生成后缀为.Obj的文件是一个二进制文件

C)后缀为∙Obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件

D)后缀为.obj和.exe的二进制文件都可以直接运行

88.[单选题]若用数组名作为函数调用的实参,传递给形参的是()。

A)数组的首地址

B)数组第一个元素的值

C)数组中全部元素的值

D)数组元素的个数

89.[单选题]若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为(

)O

A)a<>O

B)!a

Oa=O

D)a

90.[单选题]以下程序的输出结果是。

main()

{intn=4;

while(n-)printf("%d",-n);)

A)20

B)31

C)321

D)210

91.[单选题]若变量已正确定义并赋值,下面符合C语言语法的表达式是()。

A)a:=b+1

B)a=b=c+2

Oint18.5%3

D)a=a+7=c+b

92.[单选题]假定int类型变量占用4个字节,若有定义:intx[10]={0,2,4};,则数组X在内存中所占字

节数是o

A)4

B)12

020

1))40

93.[单选题]在C#语言中,SWitCh语句用【】来处理不匹配CaSe语句的值

A)default

B)anyelse

C)break

D)goto

94.[单选题]下述对C语言字符数组的描述中错误的是

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

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

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

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

95.[单选题]设有函数“voidfun(intn,char*s){}“,下面对函数指针的定义和赋值均正确的是

A)Void(*pf)();pf=fun

B)Void*pf();pf=fun

C)Void*pf();*pf=fun

D)Void(*pf)(int,char);pf=&fun

96.[单选题]能正确表示:当X的取值范围在[1,10]或[100,110]内为真,否则为假的表达式是

()o

A)(x>=1)&&(x<=10)&&(x>=100)&&(x<=110)

B)(x>=1))(x<=10)II(x>=100)II(x<=110)

C)(x>=1)&&(x<=10)II(x>=100)&&(x<=110)

D)(x>=1)II(x<=10)&&(x>=100)&&(x<=110)

97.[单选题]以下叙述中不正确的是Oo

A)C程序中的#include和#define均不是C语句

B)一个好的程序应该有详尽的注释

C)在C程序中,j++;是一条赋值语句

D)在C程序中,赋值运算符的优先级最低

98.[单选题]一个C程序函数中定义的局部变量的生存期是

A)程序运行开始到程序运行结束

B)调用函数开始到调用结束

C)与其存储类型有关

D)与其作用范围有关

99.[单选题]下列不是C语句的是()。

A)inta=100;

B)x=y+z

C)Printf("你好!");

D){x=y+z;

a=b+c;}

IOO.[单选题]有以下程序:^includemain(){inta=7;while(a—);printf("%d∖n",a);)程序

运行后的输出结果是()。

A)-l

B)0

Ol

D)7

IOL[单选题]若有以下程序段:

#include<stdio.h>

Intmain()

inta=2,b=5;

printf("a=%%d,b=%%d∖n",a,b);

return0;

其输出结果是()。

A)a=%2,b=%5

B)a=2,b=5

C)a=%%d,b=%%d

D)a=%d,b=%d

102.[单选题]能正确表示a210或a<0的关系表达式是()。

A)a>=10ora<=0

B)a>=10a<=0

C)a<=10Ia>=O

D)a>=10Ia<=0

103.[单选题]设有intm=15,n;,则执行语句n=++m;后m、n的值分别为_____。

A)15,15

B)15,16

016,15

D)16,16

104.[单选题]以下程序运行后的输出结果是()。^include<stdio.h>main(){int

i,n[5]={0};for(i=l;i<=4;i++){n[i]=n[i-l]*2+l;printf("%d",n[i]);}printf("∖n");}

A)13715

B)13716

C)13715

D)13716

105.[单选题]c语言中函数返回值的类型是由()决定的

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

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

C)调用函数时临时决定

D)定义函数时所指定的函数类型

106.[单选题]若有定义语句:intx=10;,则表达式χ-=x+x的值为()。

A)0

B)-20

0-10

D)10

107.[单选题]设有如下函数定义:

Sinclude<stdio.h>

Intfun(intk)

{if(k<l)return0;

elseif(k==l)return1;

elsereturnfun(k—1)+1;

)

若执行调用语句:n=fun(3);,则函数fun总共被调用的次数是()。

Λ)2

B)3

04

D)5

108.[单选题]若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为

A)4

B)16

032

D)52

109.[单选题]在C#中,关于WhiIe和do…WhiIe,以下说法正确的是

A)WhiIe先执行然后判断条件是否成立

B)WhiIe最少的循环次数是1次

Odo…WhiIe先执行然后判断条件是否成立

D)do…While最少的循环次数是0次

110.[单选题]58、下列四组字符串中都可以用作C语言程序中的标识符的是Oo

A)print_3ddb8aBc

B)I∖amone_halfstart$it3pai

C)str_lCpppowwhile

D)PxqMy->bookline#His.age

111.[单选题]有以下程序

Uinclude<stdio.h>

Voidmain()

(

Intx=l,y=0,a=0,b=0;

Switch(x)

(

Case1:switch(y)

(

Case0:a++;break;

Case1:b++;break;

)

Case2:a++;b++;break;

Case3:a++;b++;

Printf("a=%d,b=%d∖n",a,b);}

程序的运行结果是______O

A)a=l,b=O

B)a=2,b=2

C)a=l,b=l

D)a=2,b-1

112.[单选题]在程序开发过程中,把文本文件格式源程序转化为二进制格式的目标程序的过程称之为

()o

A)编辑

B)编译

C)连接

D)运行

113.[单选题]设inta[][4]={1,2,3,4,5,6,7,8,9};则数组a的第一维的大小是()。

A)2

B)3

04

D)值不确定

114.[单选题]以下程序运行后的输出结果是o

#include<stdio.h>

Intmain()

{chara[7]="aO∖OaO∖O";inti,j;

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

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

return0;

)

A)22

B)72

C)75

D)62

115.[单选题]若变量C定义为float型,当从终端输入283.1900后按回车,能给变量C赋以283.19的输入

语句是().

A)scanf("%f",c)

B)scanf("%8.4f"Λc)

C)scanf("%d",&c)

D)scanf("%8f"Λc)

116.[单选题]系统的标准输入文件是指().

A)键盘

B)显示器

C)软盘

D)硬盘

117.[单选题]22.设有以下程序段.XOOOD_int

X=O,s-0;_x000Dwhile(!x!=0)s+=++x;_xOOOD_printf("%d",s);_XOoOD_则()。

A)运行程序段后输出0

B)运行程序段后输出1

C)程序段中的控制表达式是非法的

D)程序段执行无限次

118.[单选题]下列说法中正确的是

A)由于C源程序是高级语言程序,因此一定要在TC软件中输入

B)由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入

C)由于C程序是高级语言程序,因此输入后即可执行

D)由于C程序是高级语言程序,因此它是由命令组成的

119.[单选题]有以下程序#include"stdio.h"ttincludevoidmain(){float

x,y,z;scanf("%f,%f",&x,&y);z=x∕y;While(1){if(fabs(z)>1.0){x=y;y=z;z=x∕y;}else

break;}printf("%f∖n",y);)通过键盘输入3.6,2.4,执行后的输出结果是()o

A)l.5

B)1.6

02

D)2.4

120.[单选题]下列选项中不是C语句的是

A)n++

B);

C)x=y=z;

D){a=l,b=2,c=a*b)

121.[单选题]以下几组选项中为合法的标识符是()。

A)int

B)float

C)b-a

D)_123

122.[单选题]设有inti=010,j=10;则printf(w%d,%d∖nw,++i,j—);的输出是()

A)ll,10

B)9,10

O010,9

D)10,9

123.[单选题]设有关键码序列(66,13,51,76,81,26,57,69,23),要按关键码值递增的次

序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为()。

A)23,13,51,57,66,26,81,69,76

B)13,23,26,51,57,56,81,76,69

023,13,51,57,26,66,81,69,76

D)23,13,51,57,81,26,66,69,76

124.[单选题]有以下程序

ttinclude<iostream>

Usingnamespacestd;

Intmain()

(

inta=3,b=4,c=5,d=2;

if(a>b)

if(b>c)

cout<<(d+++l);

else

cout<<(++d+l);

cout<<d<<endl;

return0;

)

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

A)2

B)3

C)43

D)44

125.[单选题]若有代数式(其中e仅代表自然对数的底数,不是变量),则以下能够正确表示该代数式

的C语言表达式是______O

A)sqrt(abs(n^x+e^x))

B)sqrt(fabs(pow(n,x)+pow(x,e)))

C)sqrt(fabs(pow(n,x)+exp(x)))

D)sqrt(fabs(pow(x,n)+exp(x)))

126.[单选题]a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是Oo

A)a*b∕a*b==l

B)a∕b*b∕a==l

C)a∕b*b+a%b==a

D)a∕b*b==a

127.[单选题]下列选项中,if后面的表达式的正确类型是O

A)int

B)double

C)string

D)bool

128.[单选题]下面关于循环语句for、While、do_WhiIe的叙述中正确的是

A)三种循环语句都可能出现无穷循环

B)三种循环语句中都可以缺省循环终止条件表达式

C)三种循环语句的循环体都至少被无条件地执行一次

D)三种循环语句的循环体都必须放入一对花括号中

129.[单选题]以下叙述中正确的是

A)两个字符串可以用关系运算符进行大小比较

B)函数调用StrIen(s);会返回字符串S实际占用内存的大小(以字节为单位)

C)C语言本身没有提供对字符串进行整体操作的运算符

D)当拼接两个字符串时,结果字符串占用的内存空间是两个原串占用空间的和

130.[单选题]下列叙述中正确的是

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

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

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

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

131.[单选题]表达式:(int)((double)9/2)-9%2的值是()。

A)4

B)0

03

D)5

132.[单选题]下列运算符中,不属于关系运算符的是().

AX

B)>

0>=

D)!

133.[单选题]有以下程序

^include<stdio.h>

ttdefineN4

Voidfun(inta[][N],intb[])

{inti;

For(i=0;i<N;i++)b[i]=a[i][i];

Main()

{intx□[N]={{l,2,3},{4},{5,6,7,8},{9,10}},y[N],i;

Fun(x,y);

For(i=0;i<N;i++)printf("%d,",y[i]);

Printf("∖n");

}

程序的运行结果是O

A)l,2,3,4,

B)l,0,7,0,

01,4,5,9,

D)3,4,8,10,

134.[单选题]如图所示:带有头结点的单向链表head,其三个数据结点A、B、C的连接关系见图

类型的定义为:

若指针P指向A结点,在不改变P指向的前提下以下选项中不能访问C结点数据成员dt的表达式是O

A)*(*p).next->next->dt

B)p->next->next->dt

C)(*(*(*p).next).next).dt

D)(*(p->next->next)).dt

135.[单选题]设有语句''charc='∖72';”,则变量C

A)不合法

B)包含1个字符

C)包含3个字符

D)包含2个字符

136.[单选题]若有定义"inti;floatx;",为使i得到值1,X得到值3.1416,当执行语句

rt

scanf("%3d%f",&i,&x);”时,正确的输入形式是0

A)l,3.1416/

B)13.1416Z

OOOl3.1416/

D)i=001,x=3.1416Z

137.[单选题]有以下程序

intfl(intx,inty){returnx>;y?x:y;}

intf2(intx,inty){returnx>;y?y:x;)

main()

(

inta=4,b=3,c=5,d=2,e,f,g;

e=f2(fl(a,b),fl(c,d));

f=fl(f2(a,b),f2(c,d));

g=a+b+c+d-e-f;

Printf("%d,%d,%d∖n”,e,f,g);

)

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

A)4,3,7

B)3,4,7

05,2,7

D)2,5,7

138.[单选题]设变量X为float型且已赋值,则以下语句中能将X中的数值保留到小数点后两位,并将

第三位四舍五入的是_____0

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;

139.[单选题]设有定义:inta=O,b=l;,以下表达式中,会产生"短路"现象,致使变量b的值不变的是

A)a++&&b++

B)a++II++b

C)++a&&b++

D)aI++b

140.[单选题]为表示关系xNy2z,应使用C语言表达式—A—.

A)(x>=y)⅛fe(y>=z)

B)(x>=y)AND(y>=z)

C)(x>=y>=z)

D)(x>=y)&(y>=z)

141.[单选题]下面程序的输出结果是—()—.

ttinclude<stdio.h>

voidmain()

{intn=4;

while(n-)printf("%d",n-);

}

A)20

B)31

C)321

D)210

142.[单选题]在C语言中对下面的语句而言,哪个说法是错误的?inta,b;

A)变量a和b中的值都是未知的随机数

B)a和b都是整型变量

C)变量a和b占用的内存空间的大小是相同的

D)变量a和b中的值都是O

143.[单选题]下面关于if语句和SWitCh语句的叙述中错误的是

A)if语句和SWitCh语句都可以实现算法的选择结构

B)if语句和SWitCh语句都能实现多路(两路以上)选择

Oif语句可以嵌套使用

D)switch语句不能嵌套使用

144.[单选题]若有以下程序段

Charstr[]="ab∖n∖012∖∖∖"";

Cout<<strlen(str)<<endl;

则其输出结果是()。

A)3

B)4

06

D)12

145.[单选题]设inti=10;表达式30-i<=i<=9的值是()。

A)9

B)l

020

D)0

146.[单选题]下面的程序片段:

Y=-I;

If(x!=0)

If(x>O)y=l;

Elsey=0;

以下说法错误的是______O

A)表述了类似数学中的分段函数

B)可以用其他格式的if语句改写替代

C)else不与上一行的if相匹配

D)该程序段是if语句的嵌套

147.[单选题]下面程序的输出结果是_()—.

ttinclude<stdio.h>

voidmain()

(

inta=5,b-3;

floatx=3.14,y=6.5;

printf("%d,%d∖n",a+b!=a-b,x<=(y-=6.1));

A)l,0

B)O,1

01,1

D)0,0

148.[单选题]用户定义的函数不可以调用的函数是().

A)非整型返回值的

B)本文件外的

Omain函数

D)本函数下面定义的

149.[单选题]以下数组定义语句中正确的是。

A)Intn,a[n];

B)Inta[];

OInta[2][3]={{1},{2},{3});

D)Inta[][3]={{1},{2},{3}};

150.[单选题]若用数组名作为函数调用的实参,传递给形参的是o

A)数组元素的个数

B)数组第一个元素的值

C)数组全部元素的值

D)数组的首地址

151.[单选题]在C语言中,引用数组元素时,其数组下标的数据类型允许是().

A)整型常量

B)整型表达式

C)整型常量或整型表达式

D)任何类型的表达式

152.[单选题]已有函数fun的定义"intfun(inta,intb){if(a<b)return(a,b);else

return。,a);}",在main)函数中若调用函数f(3,4),得到的返回值是

A)3

B)4

C)3和4

D)4和3

153.[单选题]有以下程序

#include<stdio.h>

Voidfun(inta[])

{inti=0;

while(a[i]<=10)

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

i++;

}

Main()

{inta[]={l,5,10,9,ll,7};

fun(a+l);

}

程序的运行结果是()。

A)5118

B)6129

C)5109

D)569

154.[单选题]若有定义:intaa[8];则以下表达式中不能代表数组元素aa[l]的地址的是

A)&aa[O]+1

B)&aa[l]

C)aa[θ]++

D)aa+1

155.[单选题]设有以下语句,若0<k<4,下列选项中对字符串的非法引用是Oochar

str[4][2]={"aaan,"bbb","ccc","ddd"},*strp[4];intj;for(j=0;j<4;j++)strp[j]=str[j];

A)strp

B)str[k]

C)strp[k]

D)*strp

156.[单选题]以下选项中,与k=n++完全等价的表达式是一_。

A)k=n,n=n+l

B)n=n+l,k=n

C)k=++n

D)k+=n+l

157.[单选题]以下叙述中错误的是O

A)编译预处理命令行必须以分号结束

B)编译预处理命令行必须以"#"开头

C)宏展开不占用运行时间,只占用编译时间

D)C语言的预处理可以实现宏定义和条件编译的功能

158.[单选题]设有说明int(*Ptr)[m];其中的标识符Ptr是()。

A)M个指向整型变量的指针

B)指向M个整型变量的函数指针

C)一个指向具有M个整型元素的一维数组的指针

D)具有M个指针元素的一维指针数组,每个元素都只能指向整型量

159.[单选题]一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是0。

A)有零个或多个输入

B)有零个或多个输出

C)有穷性

D)可行性

160.[单选题]以下程序的输出结果是O

ttinclude<stdio.h>

MainO

(

int

A,b;

for(a=l,b=l;a<=100;a++)

(

if(b>=10)break;

if(b%3==l)

(

b+=3;

continue;

)

}

printf("‰i∖n”,a);

}

A)3

B)101

C)5

D)4

161.[单选题]以下程序段运行后输出结果是()。

chars[]="infom∖0is";

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

A)4

B)5

C)8

D)9

162.[单选题]以下涉及字符串数组、字符指针的程序段,不会产生编译错误的是o

A)char*str,name[10];str="HelloWorld";

B)char*str,name[10];name="HelloWorld";

C)charstrlLlO]="prog,c",str2[10];str2=strl;

D)charheadline[];headline="=============";

163.[单选题]将两个字符串连接起来组成一个字符串时,选用函数

A)Strlen()

B)Strcpy()

C)Strcat()

D)Strcmp()

164.[单选题]设有如下定义:intX=Io,y=3,z;则语句Printf("%d∖n”,z=(x%y,x∕y));的输出结

果是

A)l

B)0

04

D)3

165.[单选题]若有:

inti;

char*sl=abc",*s2="de";

将Sl和s2连接起来形成字符串"abcde",不正确的是—。

A)strcat(si,s2);

B)for(i=3;i<6;i++)

sl[i]=s2[i-3];

C)for(i=4;i<6;i++)

si[i]=s2[i-4];

D)strcat(&sl[3],s2);

166.[单选题]下面关于typedef的叙述错误的是。

A)用typedef可以增加新类型

B)用typedef可以为各种类型说明一个新名,但不能为一个变量说明一个新名

C)用typedef为类型说明一个新名,通常可增加程序的可读性

D)TyPedef只是将已存在的类型用一个新的名字来代表

167.[单选题]若有以下程序片段:charStr[]="ab∖n∖012∖∖∖"";Printf("‰Γ,strlen(str));上面程

序片段的输出结果是()。

A)3

B)4

06

D)12

168.[单选题]假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为()。

A)7

B)8

C)9

D)10

169.[单选题]不合法的十六进制数是()∙

A)0xff

B)OXll

OOxlg

D)OXabc

170.[单选题]()是C语言提供的合法的数据类型关键字。

A)Float

B)signed

C)integer

D)Char

171.[单选题]在C语言中,引用数组元素,其数组下标的数据类型允许的是()

A)整型常数或整形表达式

B)任何类型表达式

C)整型常数

D)整形表达式

172.[单选题]若有定义int

A,x;则语句a=(x=8,x+8);运行后,变量a、X的值依次为()。

A)16,8

B)8,8

016,16

D)8,16

173.[单选题]逻辑“异或”运算可描述为当且仅当a、b两个操作数中只有一个为真时才为真,其他

情况下均为假。下面能够正确表示逻辑“异或”运算的表达式是()

A)allb

B)a&&b

C)(a&&b)&&!(aIb)

D)(a!|b)&&!(a&&b)

174.[单选题]C语言中,下列合法的长整型常量是()。

A)'a,

B)0.012345

C)2.134el2

D)OL

175.[单选题]将一个函数声明为StatiC后,该函数将()。

A)既可以被同一源文件中的函数调用,也可以被其他源文件中的函数调用

B)只能被同一源文件中的函数调用,不能被其他源文件中的函数调用

C)只能被其他源文件中的函数调用,不能被同一源文件中的函数调用

D)既不能被同一源文件中的函数调用,也不能被其他源文件中的函数调用

176.[单选题]以下能对一维数组a进行正确初始化的语句是().

A)inta[10]=(0,0,0,0,0)

B)inta[10]={};

C)inta[]={0};

D)inta[10]=(10*l);

177.[单选题]有以下程序^includeintfunl(doubles){return(int)(a*=a);}int

fun2(doublex,doubley){doublea=0,b=0;a=funl(x);b=funl(y);return

(int)(a+b);}main(){doublew;w=fun2(l.1,2.0);printf("%4.2f",w);}程序执行后输出

结果是()。

A)5

B)5.00

C)5.21

D)0.0

178.[单选题]在下列语句中存在错误的是

A)floata,b;scanf("%f%f",&a,&b);printf("a=%4.3f,b=%4.3f",a,b);

B)inta,b;scanf("%d,%d",&a,&b);printf("a=%2d,b=%2d",a,b);

C)inta,b;scanf("a=%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);

D)floata,b;scanf("%3.2f%4.2f",&a,&b);printf("%f%f",a,b);

179.[单选题]假设某表达式中包含int、1Ong、UnSigned、Char类型的数据,则表达式最后的运算结

果是O类型。

A)Long

B)Int

C)Unsigned

D)char

180.[单选题]有以下程序#include"stdio.h"voidmain(){inti,k,a[10],p[3];k=5;for(i=0;i

A)20

B)21

C)22

D)23

181.[单选题]有以下程序ftincludeintfun(intx,inty){if(x!=y)return((x+y)∕2);

elsereturn(x);}main(){inta=4,b=5,c=6;printf("%d∖n",fun(2*a,fun(b,c)));)程序运行

后的输出结果是()。

A)3

B)6

08

D)12

182.[单选题]下列程序执行后的输出结果是()。

A)l

B)2

02

D)2

183.[单选题]已有定义inti,a[10],*p;,则合法的赋值语句是()。

A)p=100;

B)p=a[5];

C)p=a[2]+2;

D)p=a+2;

184.[单选题]以下一维数组a的正确定义是_()—.

A)inta(10);

B)intn=10,a[n];

C)intn;

D)#defineSIZE10

scanf("%d",&n);inta[SIZE];

inta[n];

185.[单选题]若有:

charw[]=HELLO;

inti=0;

则关于WhiIe(W[i++])的说法不正确的是.

A)变量i可以代表字符串W的长度

B)while(w[i++])等价于While(W[i++]==0)

C)While(W[i++])等价于W

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论