C语言.docx

上传人:b****6 文档编号:8624581 上传时间:2023-02-01 格式:DOCX 页数:21 大小:29.18KB
下载 相关 举报
C语言.docx_第1页
第1页 / 共21页
C语言.docx_第2页
第2页 / 共21页
C语言.docx_第3页
第3页 / 共21页
C语言.docx_第4页
第4页 / 共21页
C语言.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

C语言.docx

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

C语言.docx

C语言

1、下列选项中,不是用来表达转义字符的是(D)

(A)\\(B)\’(C)\0(D)074

2、下列选项中,不是C语言提供的合法关键字的是(B)

(A)switch(B)begin(C)case(D)default

3、以下选项中,能作为C程序自定义标识符的是(A)

(A)file_bak(B)num(10)(C)break(D)class+2

4、设a为5,执行下列语句后,b的值不为2的是(C)

(A)b=a/2(B)b=6-(--a)(C)b=a%2(D)b=a<3?

3:

2

5、执行语句x=(a=3,b=a--);后,x,a,b的值依次为(C)

(A)3,3,2(B)2,3,2(C)3,2,3(D)2,3,3

6、在以下一组运算符中,优先级最高的运算符是()

(A)<=(B)=(C)%(D)&&

7、设a为整形变量,下列C表达式中,不能表达数学关系式10

(A)10

(C)a>10&&a<15(D)!

(a<=10)&&!

(a>=15)

8、若有以下定义:

chara;intb;floatc;doubled;则表达式a*b+d-c值的类型为()

(A)float(B)int(C)char(D)double

9、设a,b为字符型变量,执行scanf(“a=%c,b=%c”,&a,&b)函数调用后使a为’A’,b为’B’,正确的输入是()

(A)a=A,b=B(B)‘A’,’B’(C)A=A,B=B(D)‘A’’B’

10、设有inti=010,j=10;执行printf(“%d,%d\n”,++i,j--);语句后的输出是(B)

(A)11,10(B)9,10(C)010,9(D)10,9

11、设a=3,b=4,执行printf(“%d,%d”,(a,b),(b,a));语句后的输出是(B)

(A)3,4(B)4,3(C)3,3(D)4,4

12、假定所有变量均已正确定义,下列程序段运行后x的值是(B)

a=b=c=0;x=35;

if(!

a)x--;elseif(b);if(c)x=3;elsex=4;

(A)34(B)4(C)35(D)3

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

x=9;

while(x>7)

{printf(“*”);x--;}

(A)****(B)***(C)**(D)*

14、下列语句中错误的是(B)

(A)while(x=y)5;(B)dox++while(x==10);

(C)while(0);(D)do2;while(a==b);

15、循环语句for(x=0,y=0;(y!

=123)||(x<4);x++);的循环执行(A)

(A)无限次(B)不确定次(C)4次(D)3次

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

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

for(j=0;j<4;j++){……}

(A)20(B)24(C)25(D)30

17、执行语句chara[10]={“abcd”},*p=a;后,*(p+4)的值是(C)

(A)“abcd”(B)‘d’(C)‘\0’(D)不能确定

18、函数调用时,下列说法中不正确的是(A)

(A)若用值传递方式,则形式参数不予分配内存

(B)实际参数和形式参数可以同名

(C)主调函数和被调用函数可以不在同一个文件中

(D)函数间传递数据可以使用全局变量

19、定义一个具有10个元素的整型数组,应该使用语句(A)

(A)inta[10];(B)inta[2,5];(C)inta[];(D)int*a[10]

20、设有定义inta=3,b,*p=&a;,则下列语句中不能使为3的语句是(D)

(A)b=*&a(B)b=*p(C)b=a(D)b=*a

21、若已定义:

inta[9],*p=a;,并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是(C)

(A)p+1(B)a+1(C)a++(D)++p

22、要使doublea;longb;的数据能正确的输出,输出语句应是(D)

(A)printf("%d,%f",b,a);(B)printf("%d,%1f",b,a);

(C)scanf("%1d,%1f",&b,&a);(D)printf("%1d,%lf",b,a);

23、以下数据类型属于构造类型的是(C)

(A)整型(B)字符型(C)数组型(D)单精度实型

24、字符串"m\x42\\\np\102q"的长度是(A)

(A)7(B)9(C)15(D)16

25、执行下列程序段后*(p+7)的值为(C)

chars[]=”student”,*p;p=s;

(A)‘t’(B)‘t’的地址(C)‘\0’(D)不确定值

26、字符串"xyz"在内存中占用的字节数是(B)

(A)3(B)4(C)5(D)6

27、一个char型数据,它的值在内存中存放的是(A)

(A)ASCII码值(B)BCD码值(C)内码值(D)十进制码值

28、若已定义x和y为double类型,则表达式x=1,y=x+3/2的结果是(C)

(A)1(B)2(C)2.0(D)2.5

29、若有以下定义:

chara;intb;floatc;doubled;,则表达式a*b+d-c值的类型为(D)

(A)float(B)int(C)char(D)double

30、表达式9!

=7的值是(D)

(A)true(B)非0值(C)0(D)1

31、使用scanf(""x=%f,y=%f"",&x,&y)函数调用,要使x,y均为1.25,正确的输入是(C)

(A)"1.25,1.25"(B)1.251.25(C)"x=1.25,y=1.25"(D)x=1.25y=1.25

32、设inta=8,b=7,c=6,x=1;,则执行下列语句

if(a>6)

if(b>7)

if(c>8)

x=2;

elsex=3;后x的值是(B)

(A)0(B)1(C)2(D)3

33、在c语言中,下列说法中正确的是(D)

(A)编程时尽量不要使用"do语句while(条件)"的循环

(B)do语句while(条件)"的循环中必须使用"break"语句退出循环

(C)do语句while(条件)"的循环中,当条件非0时将结束循环

(D)do语句while(条件)"的循环中,当条件为0时将结束循环

34、下列c代码中,合法的数组定义是(D)

(A)inta[]={""string""};(B)inta[5]={0,1,2,3,4,5};

(C)chara={""string""};(D)chara[]={0,1,2,3,4,5};

35、设有如下定义,则正确的叙述为(C)

charx[]={""abcdefg""},y[]={'a','b','c','d','e','f','g'};

(A)数组x和数组y等价(B)数组x和数组y长度相同

(C)数组x的长度大于数组y的长度(D)数组x的长度小于数组y的长度

36、在c语言中,下列说法中错误的是(D)

(A)函数定义可以分为两个部分:

函数说明部分和函数体

(B)主函数可以调用任何非主函数

(C)任何非主函数可以调用其他任何非主函数

(D)程序可以从任何函数开始执行

37、若有说明语句inta[10],*p=a;,对数组元素的正确引用是(C)

(A)a[p](B)p[a](C)*(p+2)(D)p+2

38、若有以下定义,则不能表示a数组元素的表达式是(B)

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

(A)*p(B)a[10](C)*a(D)a[p-a]

39、以下对C语言函数的有关描述中,正确的是(A)

(A)在C语言中,调用函数时,只能把实参的值传递给形参,形参的值不能传递给实参

(B)C函数数组既可以嵌套定义,又可以递归调用

(C)函数必须有返回值,否则不能使用函数

(D)C程序中,有调用关系的所有函数必须放在同一个源程序文件中"

40、C语言中运算对象必须是整型的运算符是(A)

(A)%(B)/(C)<>(D)<=

41、C语言开始于二十世纪(B)年代

(A)六十(B)七十(C)八十(D)九十

42、函数调用语句f((e1,e2),(e3,e4,e5));中参数的个数是(B)

(A)1(B)2(C)4(D)5

43、C语言中最简单的数据类型包括(B)

(A)整型、实型、逻辑型(B)整型、实型、字符型

(C)整型、字符型、逻辑型(D)整型、实型、逻辑型、字符型

44、若变量已正确说明为float类型,要通过语句scanf("%f%f%f",&a,&b,&c);给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:

(B)

(A)10<回车>22<回车>33<回车>(B)10.0,22.0,33.0<回车>

(C)10.0<回车>22.033.0<回车>(D)1022<回车>33<回车>

45、若变量c为char类型,能正确判断出c为小写字母的表达式是(D)

(A)'a'<=c<='z'(B)(c>='a')||(c<='z')

(C)('a'<=c)and('z'>=c)(D)(c>='a')&&(c<='z')

46、假定所有变量均已正确说明,下列是程序段运行后x的值是?

(D)

a=b=c=0;x=33;if(!

a)x--;elseif(b);if(c)x=7;elsex=6;

(A)32(B)33(C)7(D)6

47、下面程序段的运行结果是(C)

chara[7]="abcdef";

charb[4]="ABC";

strcpy(a,b);

printf("%c",a[5]);

(A)空格(B)\0(C)e(D)f

48、以下所列的C语言常量中,错误的是(B)

(A)0xFF(B)1.2e0.5(C)2L(D)'\72'

49、假设指针p1已经指向了某个整型变量,要使指针p2也指向同一个变量,则下面各项中正确的是:

()

(A)p2=**p1(B)p2=*&p1(C)p2=*p1(D)p2=&*p1地址

50、函数调用语句func((exp1,exp2),(exp3,exp4,exp5));中,实参的个数为:

(B)

(A)1(B)2(C)4(D)5

51、以下c语言函数声明中,不正确的是:

(C)

(A)voidfun(intx,inty);(B)fun(intx,inty);

(C)intfun(intx,y)(D)char*fun(char*s);

52、表达式1&&3&&5&&7的值为:

(A)

(A)1(B)3(C)5(D)7

53、以下程序的输出结果是(C)

voidfun(intx,inty,intz)

{z=x*x+y*y;}没有return

intmain()

{inta=31;

fun(5,2,a);

printf("%d",a);

return0 ;

}

(A)0(B)29(C)31(D)无确定值

54、若有以下说明和语句,则输出结果是(C)

(strlen(s)为求字符串s的长度的函数)

charsp[]="\t\v\\\0will\n";

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

(A)14(B)3(C)9(D)字符串中有非法字符

55、循环语句while(!

E)中的表达式!

E等价于:

(B)

(A)E!

=0(B)E==0(C)E!

=1(D)E==1

56、函数调用:

strcat(strcpy(str1,str2),str3)的功能是(C)

(A)将串str1复制到串str2中后再连接到串str3之后

(B)将串str1连接到串str2之后再复制到串str3之后

(C)将串str2复制到串str1中后再将串str3连接到串str1之后

(D)将串str2连接到串str1之后再将串str1复制到串str3中

57、设有定义语句“int*ptr[10]”,其中的ptr是(D)

(A)10个指向整型变量的指针

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

(C)一个指向具有10个元素的一维数组的指针

(D)具有10个指针元素的一维数组

58、表达式-1<=3<=-5值是:

(A)

(A)0(B)1(C)3(D)表达式语法有错

59、在用一个字节存储一个字符的系统中,’\n’在内存中占用的字节数是(C)

(A)3(B)2(C)1(D)4

60、设变量m,n,a,b,c,d均为0,执行(m=a==b)||(n=c==d)后,m,n的值是(C)

(A)0,0(B)0,1(C)1,0(D)1,1

61、以下选项中,不是C的合法关键字的是(A)

(A)scanf(B)dowhile(C)for(D)continue

62、设a=3,b=4,执行printf(“%d,%d”,(b,a,a+b),(a,b,b-a))(D)

(A)3,4(B)4,3(C)4,1(D)7,1

63、设a=1,b=2,c=3,d=4,则表达式a

a:

c

c:

d的结果为(D)

(A)4(B)3(C)2(D)1

64、下述语句中,if语句语法是错误的。

(C)

(A)if(x>y);

(B)if(x==y)x+=y;

(C)if(x!

=y)scanf("%d",&x)elsescanf("%d",&y);

(D)if(x

65、设有如下定义;intx=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y));的输出结果是(A)

(A)3(B)0(C)4(D)1

66、下列选项中不属于C语言数据类型的是(C)

(A)整型(B)双精度型(C)逻辑型(D)枚举型

67、C语言中各种基本数据类型的存储空间长度排列为(C)

(A)char

(C)char

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

(A)在C程序中,APH和aph是两个不同的变量

(B)C程序中的变量,代表内存中的一个存储单元,它的值可以根据需要随时修改

(C)在C程序中,无论是整数还是实数,都能准确无误地表示

(D)在C程序中,一个正整数可以用十进制、八进制和十六进制的形式来表示

69、C语言可执行程序的开始执行点是(C)

(A)程序中第一条可执行语言(B)程序中第一个函数

(C)程序中的main函数(D)包含文件中的第一个函数

70、C语言程序的基本单位是(A)

(A)函数(B)过程(C)字符(D)语句

71、有以下程序:

{intx=10,y=10;printf("%d,%d\n",x--,--y);}程序运行后的输出结果是(D)

(A)10,10(B)9,9(C)9,10(D)10,9

72、以下选项中,与k=n++完全等价的表达式是(D)

(A)k+=n+1(B)n=n+1,k=n(C)k=++n(D)k=n,n=n+1

73、已有定义:

intx=3,y=4,z=5;则表达式!

(x+y)+z-l&&y+z/2的值是(D)。

(A)6  (B)0  (C)2  (D)1

74、以下四个选项中不能看作一条语句的是(D)。

(A){;}  (B)a=0,b=0,c=0; (C)if(a>0);  (D)if(b==0)m=l;n=2;

75、设a和b均为double型常量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)。

(A)6.500000 (B)6  (C)5.500000  (D)6.000000

76、设有如下定义:

charx[]={"abcdefg”},y[]={'a','b','c','d','e','f','g'},则正确的叙述为(C)

(A)数组x和y等价(B)数组x和y长度相同

(C)数组x的长度大于数组y的长度(D)数组x的长度小于数组y的长度

77、已有定义语句:

intx=3,y=0,z=0;,则值为0的表达式是(A)

(A)x&&y(B)x||z(C)x||z+2&&y-z(D)!

((x

z||y)

78、以下语句中,不属于循环语句的是(D)

(A)while…(B)dowhile…(C)for…(D)switch…

79、printf(“\65”);语句输出的是(C)六进制

(A)\65(B))65(C)5(D)A

80、x=(a=3*5,a*4);那么x的值为(B)

(A)15(B)60(C)75(D)不确定值

81、若有以下程序段

intc1=1,c2=2,c3;c3=1.0/c2*c1;

则执行后,c3中的值是(A)

(A)0(B)0.5(C)1(D)2

82、有如下程序

intmain()

{inty=3,x=3,z=1;

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

return0 ;

}

运行该程序的输出结果是(D)

(A)34(B)42(C)43(D)33

83、能正确表示逻辑关系:

“a≥=1或a≤0”的C语言表达式是()

(A)a>=1ora<=0(B)a>=1|a<=0(C)a>=1&&a<=0(D)a>=1||a<=0

84、有如下程序

intmain()

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

switch(x)

{case0:

b++;

case1:

a++

case2:

a++;b++

}

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

return0 ;

}

该程序的输出结果是(A)

(A)a=2,b=1(B)a=1,b=1(C)a=1,b=0(D)a=2,b=2

85、有如下程序

intmain()

{floatx=2.0,y;

if(x<0.0)y=0.0;

elseif(x<10.0)y=1.0/x;

elsey=1.0;

printf(“%f\n”,y);

return0 ;

}

该程序的输出结果是(C)

(A)0.000000(B)0.250000(C)0.500000(D)1.000000

86、有如下程序

intmain()

{inta=2,b=-1,c=2;

if(if(b<0))c=0;

elsec++

printf(“%d\n”,c);

return0 ;

}

该程序的输出结果是(A)

(A)0(B)1(C)2(D)3

87、有如下程序

intmain()

{inti,sum;

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

printf(“%d\n”,sum);

return0 ;

}

该程序的执行结果是(C)

(A)6(B)3(C)死循环(D)0

88、以下对一维整形数组a进行正确初始化的语句是(C)

(A)inta[10]=(0,0,0,0,0);(B)inta[10]={};(C)inta[]={0};(D)inta[10]={10*1};

89、有如下程序段

inta=14,b=15,x;

charc=’A’;

x=(a&&‘B’)&&(c<’B’);

执行该程序段后,x的值为(D)

(A)true(B)false(C)0(D)1

90、函数的实参是简单变量时,它与对应形参之间的数据传递方式是(C)

(A)地址传送(B)由实参传给形参,再由形参传回给实参

(C)单向值传递(D)由用户指定传递方式

91、如果在一个函数的复合语句中定义了一个变量,则正确的说法是:

(C)

(A)该变量在该函数中有效(B)该变量在本程序范围内均有效

(C)该变量只在该复合语句中有效(D)该变量为非法变量

92、逻辑运算符两侧运算对象的数据类型:

(A)

(A)可以是任何类型的数据(B)只能是整型或字符型数据

(C)只能是0或非0数(D)只能是0或1

93、对for(表达式1;;表达式3)可理解为:

(D)

(A)for(表达式1;表达式3;表达式3)(B)for(表达式1;表达式3)

(C)for(表达式1;表达式1;表达式3)(D)for(表达式1;1;表达式3)

94、表达式x=(3+2,5*6),x+1运算后,x的值为:

(D)

(A)无确定值(B)5(C)31(D)30

95已定义charc;c=’a’;,则在内存中存储c的值为:

(B)

(A)a(B)97(C)65(D)‘a’

96、定义如下变量和数组:

intk;

inta[3][3]=

1,2,3

4,5,6

7,8,9

则下面语句的输出结果是(A)

for(k=0;k<3;k++)printf(“%d”,a[k][2-k]);

(A)357(B)369(C)159(D)147

97、以下程序段(C);

x=-1;do

{x=x*x;}

while(!

x);

(A)死循环(B)循环执行两次(C)循环执行一次(D)有语法错误

98、设inta,b,c;执

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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