福建省二级c语言资料.docx

上传人:b****3 文档编号:5269413 上传时间:2022-12-14 格式:DOCX 页数:104 大小:129.29KB
下载 相关 举报
福建省二级c语言资料.docx_第1页
第1页 / 共104页
福建省二级c语言资料.docx_第2页
第2页 / 共104页
福建省二级c语言资料.docx_第3页
第3页 / 共104页
福建省二级c语言资料.docx_第4页
第4页 / 共104页
福建省二级c语言资料.docx_第5页
第5页 / 共104页
点击查看更多>>
下载资源
资源描述

福建省二级c语言资料.docx

《福建省二级c语言资料.docx》由会员分享,可在线阅读,更多相关《福建省二级c语言资料.docx(104页珍藏版)》请在冰豆网上搜索。

福建省二级c语言资料.docx

福建省二级c语言资料

语法基础

12、在C语言中,正确的用户标识符是()

A.3fB._forC.structD._f.5

16、以下()是正确的字符常量

A.“c”B.‘//”C.‘W’D.“\32a”

17、以下()是不正确的字符串常量

A.‘abc’B.“12’12”C.“0”D.““

18、C语言的整型数据在内存中的存储形式是()

A.原码B.反码C.补码D.ASCII码

19、以下()是正确的浮点数

A.e3B..62C.2e4.5D.123

20、下列不属于C语言关键字的是()

A.continueB.integerC.staticD.signed

21、C语言的字符型数据在内存中的存储形式是()

A.原码B.补码C.反码D.ASCII

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

A.由变量的类型决定B.由用户自己决定

C.任意的D.均为两个字节

23、若有定义:

inta=2;则正确的赋值表达式是()

A.a-=(a*3)B.double(-1)C.a*3D.a*4=3

24、语句x=(a=3,b=++a);运行后,x、a、b的值依次为()

A.3,3,4B.4,4,3C.4,4,4D.3,4,3

25、语句a=(3/4)+3%2;运行后,a的值为()

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

27、若有定义:

intx,a;则语句x=(a=3,a+1);运行后,x、a的值依次为()

A.3,3B.4,4C.4,3D.3,4

28、若变量已正确定义并赋值,符合C语言语法的表达式是()

A.a=8+b+c,a++B.a=3aC.int(12.3%4)D.a=a+1=c+b

29、若有定义:

inta,b;doublex;则以下不符合C语言语法的表达式是()

A.x%(-3)B.a+=-1C.a=b=2D.x=a+b

30、若有定义:

intx=2,y=3;floati;则以下符合C语言语法的表达式是()

A.x=x*3=2B.x=(y==1)C.i=float(x)D.i%(-3)

31、若有定义:

intx;则语句x=(2*3)+6%5;运行后,x的值是()

A.8B.7C.6D.5

32、下面关于C语言变量的叙述中,错误的是()

A.可以用const关键字定义变量B.在C程序中,SUM和sum是不同的变量

C.变量名必须由字母或下划线组成D.变量的类型确定了变量的取值范围

33、若有定义:

intx=5,y=6;则表达式x=(y==6)的值为()

A.5B.1C.6D.0

34、下面叙述正确的是()

A.2/3与2.0/3.0等价B.(int)2.0/3与2/3等价

C.++5与6等价D.‘A’与”A”等价

35、下面叙述中,错误的是()

A.C语言基本的算术运算符不包含模运算符”%”

B.算术运算符的优先级高于关系运算符

C.自加和自减运算符的结合方向是”自右向左”

D.C语言规定在表达式求值时,按其中运算符的优先级先高后低的次序进行

36、下面叙述正确的是()

A.强制类型转换运算的优先级高于算术运算B.若a和b是整型变量,(a+b)++是合法的

C.‘A’*’B’是不合法的D.“A”+”B”是合法的

38、设整型变量a为5,使b不为2的表达式是()

A.b=(++a)/3B.b=6-(--a)C.b=a%2D.b=a/2

39、若有定义:

inta=1,b=2,c=3;则语句++a||++b&&++c;运行后b的值为()

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

40、若有定义:

inti,j;则表达式(i=2,j=5,i++,i+j++)的值是()

A.7B.8C.9D.10

41、若有定义:

inta,b;则表达式(a=2,b=5,a*2,b++,a+b)的值是()

A.7B.8C.9D.10

42、若有定义:

inti=2,j=5;则表达式(i+1,j+1,(++i+(j--))的值为()

A.8B.6C.7D.5

43、若已定义:

inti=3,k;则语句k=(i--)+(i--);运行后k的值为()

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

44、C语言的运算符按运算对象的个数可以分为()

A.单目运算符一种B.单目和双目运算符

C.单目、双目和三目运算符D.单目、双目、三目和四目运算符

45、若已定义:

floatm;拟从键盘输入135.78这一数据给变量m,则应选用的语句是()

A.scanf(“%5.2f”,&m);B.scanf(“%3.2f”,&m);

C.scanf(“6.2f”,&m);D.scanf(“6f”,&m);

46、已知doublea;使用scanf()函数输入一个数值给变量a,正确的函数调用是()

A.scanf(“%ld”,&a);B.scanf(“%lf”,&a);

C.scanf(“%c”,&a);D.scanf(“%u”,&a);

47、已知chara;使用scanf()函数输入一个字符给变量a,不正确的函数调用是()

A.scanf(“%d”,&a);B.scanf(“%lf”,&a);C.scanf(“%c”,&a);D.scanf(“%u”,&a);

48、putchar()函数的功能是向终端输出()

A.多个字符B.一个字符C.一个实型变量值D.一个整型变量表达式

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

intk=11;

printf(“k=%d,k=%o,k=%x\n”,k,k,k);

A.k=11,k=13,k=cB.k=11,k=12,k=13

C.k=11,k=13,k=bD.k=11,k=13,k=a

50、若有定义:

intx=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”,x,y,z);运行后的输出结果为()

A.123412312B.12341234123412341231231231212

C.1234+1234+1234D.1234+123+12

51、已有如下定义和输入语句,

inta;charc1,c2;

scanf(“%d%c%c”,&a,&c1,&c2);

若要求a、c1、c2的值分别为10、A和B,正确的数据输入是()

A.10ABB.10ABC.10ABD.10AB

52、以下程序段的运行结果是()

inta=0,b=0,c=0;

if(a&&++b)

c++;

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

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

53、以下程序的运行结果是()

voidmain()

{

inta=65;

charc=’A’;

printf(“%x,%d”,b,c);

}

A.65,aB.41,aC.65,65D.41,65

54、若已定义:

inta=5;floatb=63.72;以下语句中能输出正确值的是()

A.printf(“%d%d”,a,b);B.printf(“%d%2f”,a,b);

C.printf(“%2f%2f”,a,b);D.printf(“%2f%d”,a,b);

55、运行以下程序段时编译出错,其原因是()

charc1='8',c2='2008';

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

A.c2是字符变量,只能赋以字符常量,不能赋以字符串常量

B.字符串要用“2008“表示,而‘2008’不是字符串表示

C.‘2008’只能赋值给字符数组

D.字符变量不能用%d格式输出

56、若已定义:

inta=3,b=15,c;则语句c=a>b;运行后c的值为()

A.1B.0C.tD.f

57、在C语言中,判定逻辑值为“真“的最正确的叙述是()

A.1B.非0的数C.大于0的数D.非0的整数

58、若已定义:

inta=-36,b=-30,c;则语句c=a

A.1B.tC.0D.f

59、能正确表示数学关系式800>=y>=500的C语言表达式为()

A.(y<=800)&&(y>=500)B.(y<=800)AND(y>=500)

C.800>=y>=500D.(y<=800)&(y>=500)

60、若有定义:

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

x||y的值为()

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

61、若有定义:

inti=7,j=8;则表达式i>=j||i

A.1B.变量i的值C.0D.变量j的值

62、若希望当a的值为奇数时,表达式的值为“真”,a的值为偶数时,表达式的值为”假”。

则不能满足要求的表达式是()

A.a%2==1B.!

(a%2==0)C.!

(a%2)D.a%2

63、若有定义:

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

A.‘x’&&yB.x<=y

C.x||y+z&&y-zD.!

((x

z||1)

64、若有定义:

inta=5,b=2,c=1;则表达式a-b

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

67、已知doublea=5.2;则正确的赋值表达式是()

A.a+=a-=(a=4)*(a=3)B.a=a*3=2

C.a%3D.a=double(-2)

68、已知chara='R';则正确的赋值表达式是()

A.a=(a++)%4B.a+2=3C.a+=256--D.a=’\078’

69、已知inta=’R’;则正确的表达式是()

A.a%10B.a=int(3e2)C.2*a=a++D.a=a+a=a+3

75、若有定义:

inta=6,b=2;charc1=’a’,c2=’b’;则表达式a+b%5+c2-c1的值是(c)

A.7B.8C.9D.表达式错误

77、设有定义:

charc;floatf;inti;unsignedu;doubled;下列各表达式的类型分别是()

1.u+92.d!

=f&&(i+2)3.8.2*i+c

A.1.unsigned,2.int,3.doubleB.1.double,2.double,3.double

C.1.int,2.double,3.charD.1.unsigned,2.double,3.int

控制结构

81、以下程序段运行的结果是()

inta,b,c,x;

a=b=c=0;x=15;

if(!

a)x--;

elseif(b);

if(c)x=3;

else

x+=4;

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

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

89、若有定义:

intx;以下不会产生死循环的是()

A.for(;(x=getchar())!

=’\n’;);B.while

(1){x++;}

C.for(i=10;;i++);D.for(;;x+=1);

90、在循环语句的循环体中,break语句的作用是()

A.暂停程序的运行B.结束本次循环

C.继续执行break语句之后的循环体各语句

D.提前结束循环,接着执行该循环后续的语句

96、以下程序的运行结果是()

voidmain()

{

intsum=0,item=0;

while(item<5)

{

item++;

sum+=item;

if(sum>=6)

break;

}

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

}

A.10B.15C.6D.7

97、以下程序的运行结果是()

voinmain()

{

intsum=0,item=0;

while(item<5)

{

item++;

if(item==2)

continue;

sum+=item;

}

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

}

A.10B.13C.15D.1

99、以下程序的运行结果是()

#include

main()

{

inty=10;

do

{y--;}

while(--y);

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

}

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

数组

101、下列数组定义中,正确的是()

A.inta[10];B.intn=10,a[n];

C.intN=10;inta[N];D.intn;scanf(“%d”,&n);inta[n];

102、若已定义:

inta[13];则不能正确引用a数组的元素的是()

A.a[0]B.a[10]C.a[10+3]D.a[13-5]

103、若有定义:

inta[3]={0,1,2};则a[1]的值为()

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

104、若有定义:

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

则语句a[1]=a[2]+a[2+2]-a[3-1];运行后a[1]的值为()

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

106、若有如下程序段:

chars[10];

s=“abcd”;

printf(“%s\n”,s);

则()。

A.执行时输出:

abcdB.执行时输出:

a

C.执行时输出:

abD.编译不通过

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

inti=0,a[]={7,5,7,3,8,3};

do{

a[i]+=2;

}while(a[++i]>5);

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

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

A.9795105B.9593103C.957383D.757383

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

inti=0,a[]={1,2,3,4,5};

do{

a[i]+=10;

}while(a[++i]>2);

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

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

A.112345B.12345C.1112131415D.1112345

109、西面关于数组的叙述中,正确的是()

A.数组必须先定义,然后使用

B.定义数组时,可不加类型说明符

C.定义数组后,可通过赋值运算符“=”对该数组名直接赋值

D.在数据类型中,数组属于基本类型

110、一下程序段的运行结果是()

inti=0,a[]={6,5,3,7};

do

{

a[i]++;

}while(a[i]<4);

for(i=0;i<4;i++)printf("%d",a[i]);

A.6537B.7563C.7537D.5673

111、有如下程序段:

intt[][3]={1,2,3,4,5,6,7,8,9,10,11,12};

printf("%d\n",t[2][1]);

则执行该程序段后输出结果是()

A.8B.7C.4D.2

112、以下程序段运行后s的值是()

inta[3][3]={1,2,3,1,2,3,1,2,3};

inti,j,s=1;

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

for(j=i;j<3;j++)s*=a[i][j];

A.18B.108C.2D.12

113、以下不能对二维数组arr进行正确初始化的语句是()

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

C.intarr[2][3]={{1,2},{3,4},{5,6}};D.intarr[2][3]={{1},{3,4,5}};

114、若有定义:

inta[3][4]={{1,2},{0},{1,2,3}};则a[1][1]的值为()

A.0B.{1,2}C.1D.3

116、若有定义:

inti=0,x=0;inta[3][3]={1,2,3,4,5,6,7,8,9};则以下程序段运行后x的值为()

for(;i<3;i++)x+=a[i][2-i];

A.0B.12C.15D.18

117、若有定义inta[2][3];则对数组元素的非法引用的是()

A.a[0][1/2]B.a[1][1]C.a[4-4][0]D.a[0][3]

118、以下数组定义中,正确的是()

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

C.inta[2][2]={{1,2},{3}};D.inta[][]={1,2,3,4};

120、以下程序段运行后s的值是()

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

inti,j,s=1;

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

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

s*=a[i][j];

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

121、设已定义:

inta[][4]={0,0};则下列描述错误的是()

A.数组a的每个元素都可得到初值0B.二维数组a的第一维大小为1

C.数组a的行数为1

D.只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0

122、设已定义:

charstr1[10],str2[10]=”Fujian”;则能将字符串”Fujian”赋给数组str1的正确语句是()

A.str1=”Fujian”B.strcpy(str1,str2);C.strcpy(str2,str1);D.str1=str2;

123、有如下定义:

charstr[3][2]={'a','b','c','\0','e','f'};则语句:

printf("%s",str[0]);的输出结果是()

A.abB.abcefC.abc\0D.abc

124、设有如下数组定义:

charstr[8]={"Fujian"};则分配给数组str的存储空间是()字节

A.6B.7C.8D.9

125、若有定义:

chara[]="abcdef";charb[]="xyz";则以下程序段运行后屏幕输出为()

strcpy(a,b);

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

A.cB.zC.\0D.d

126、以下程序段运行后屏幕输出为()

chara[]="abc\0mis";

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

A.5B.8C.3D.4

127、若有定义:

inta=2;则语句a=strcmp("miss","miss");运行后a的值为()

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

128、以下对C语言字符数组描述中,正确的是()

A.可以用length函数计算字符数组中字符串的长度

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

C.存放在字符数组中的字符串,以’\0’作为该字符串结束标志

D.字符数组只能存放字符串,不能存放字符

129、以下程序段运行后屏幕输出为()

charstr[80];

strcpy(str,"hello");

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

A.5B.6C.7D.80

131、已有定义:

charstr1[15]={“university”},str2[15];则以下语句中正确的是()

A.str2=str1;B.str2=”college”;C.scanf(“%s”,&str2);D.printf(“%s”,str1);

132、设已定义:

chars1[20]=”Youare”,s2[9]=”welcome!

”;若要形成字符串”Youarewelcome!

”,正确的语句是()

A.strcat(s1,s2);B.strcpy(s1,s2);C.s1+s2;D.s1&s2

函数

134、以下程序的运行结果是()

intfun(intarray[4][4])

{

intj;

for(j=0;j<4;j++)printf("%2d",array[2][j]);

printf("\n");

}

main()

{

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

fun(a);

}

A.2005B.1004C.0120D.0450

136、以下程序运行后屏幕输出为()

#include

intf(intx,inty)

{

return(x+y);

}

main()

{

inta=2,b=3,c;

c=f(a,b);

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

}

A.0B.2+3=5C.2+3=0D.3+2=5

137、以下程序运行后屏幕输出为()

#include

inta=2,b=3;

intmax(inta,intb)

{

intc;

c=a>b?

a:

b;

return(c);

}

main()

{

inta=4;

printf("%d",max(a,b));

}

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

138、以下程序的运行结果是()

fun(inti)

{

inta=2;

a=i++;

printf("%d",a);

}

main()

{

inta=5,c=3;

fun(c);

printf("%d",a);

}

A.45B.35C.44D.33

139、若有如下函数定义:

intfun()

{

staticintk=0;

return++k;

}

以下程序段运行后屏幕输出为()

inti;

for(i=1;i<=5;i++)fun();

printf("%d",fun());

A.0B.1C.5D.6

140、下面程序的输出结果是:

()

#include

intglobal=100;

fun()

{

intglobal=5;

return++global;

}

voidmain()

{

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

}

A.100B

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

当前位置:首页 > 求职职场 > 自我管理与提升

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

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