二级C省考题.docx

上传人:b****8 文档编号:28128058 上传时间:2023-07-08 格式:DOCX 页数:73 大小:63.75KB
下载 相关 举报
二级C省考题.docx_第1页
第1页 / 共73页
二级C省考题.docx_第2页
第2页 / 共73页
二级C省考题.docx_第3页
第3页 / 共73页
二级C省考题.docx_第4页
第4页 / 共73页
二级C省考题.docx_第5页
第5页 / 共73页
点击查看更多>>
下载资源
资源描述

二级C省考题.docx

《二级C省考题.docx》由会员分享,可在线阅读,更多相关《二级C省考题.docx(73页珍藏版)》请在冰豆网上搜索。

二级C省考题.docx

二级C省考题

一.选择题

1.下列关于C源程序中main()函数位置的叙述,正确的是()。

A、必须是最后一个函数

B、必须是第一个函数

C、可以写在第一个函数,也可以写在最后一个函数

D、必须在系统调用的库函数后面

2.下列()为合法的字符常量。

A、'\n'

B、"\n"

C、N

D、"n”

字符常量的表现形式有两种:

(1)使用单引号括起来的一个字符。

例如:

’a’、’b’、’?

(2)使用转义字符表示方法表示的字符。

转义字符示意反斜杠’\’开头的,后面跟字符或数字,并用单引号括起来表示字符常量。

例如’\n’、’\t’、’\a’等

3.下列()为合法的用户标识符。

A、5x

B、do

C、_int

D、xy.6

标识符可以由字母、数字和下划线构成,且必须由字母或下划线开头

4.若已定义:

inta,b=140;语句a=b/100%7;执行后a的值为()。

A、1

B、70

C、2

D、0

5.若已定义:

floata;拟从键盘输入数据65给变量a,应选用()语句。

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

B、scanf("%f",&a);

C、scanf("%d",&a);

D、scanf("%2.0f",&a);

6若已定义:

inta=6,b=4,c;语句c=(b>(c=a));执行后变量c的值为()。

A、6

B、1

C、4

D、0

7若已定义:

inta=5;floatb=1.5;表达式a+b*5/3的值为()。

A、7

B、6.5

C、7.500000

D、6

8.若已定义inta,b,c,k=0;下列程序段与语句a>b?

(b>c?

k++:

k):

k++;功能等价的是()。

a>bb>ck=1a>bb<=ck=0a<=bb>ck=1a<=bb<=ck=1

A、if((a>b)&&(b<=c))

k=0;

else

k=1;.

B、if(a<=b)

k=1;

elseif(b>c)

k=0;

else

k=0;

C、.if(a<=b)

k=1;

elseif(b>c)

k=1;

else

k=0;

D、if((a>b)||b>c))

k=1;

else

k=0;

9.以下程序段的运行结果是()。

inti,a=0;

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

{if(i/2==1)

{a+=i;

break;

}

a++;

}

printf("%d",a);

A、8

B、3

C、10

D、5

10.以下程序段的运行结果是()。

inta[]={2,4,6,8,10},i;

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

a[i]=a[i+1]++;

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

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

A、4681012

B、4681011

C、68101210

D、5791111

11.以下程序段的运行结果是()。

inta[][3]={11,21,13,14,51,61,17,8,29,10,26};

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

A、14B、8C、21D、51

12.在TurboC中,若已定义:

charstr1[8]="Notice",str2[8]="NOTICE";则函数strcmp(str1,str2)的值是()。

A、1B、32C、-32D、0

13.下列叙述正确的是()。

A、形参是变量名时,实参可以省略

B、必要时函数可进行嵌套定义

C、定义函数时都必需指明函数参数

D、定义函数时必须给出函数的类型

14.下列叙述错误的是()。

A、编译预处理不占用运行时间

B、C语言中define称为宏定义

C、编译预处理命令行必须以"#"开头

D、编译预处理命令行必须以分号结束

15.在TurboC中,以下程序段的运行结果是()。

char*p1;

int*p2;

float*p3;

printf("%d%d%d",sizeof(*p1),sizeof(*p2),sizeof(*p3));

A、144

B、444

C、111

D、124

16.以下程序的运行结果是()。

#include

voidfun(int*p1,int*p2)

{intsum;

sum=*p1+*p2;

*p1=sum-*p1;

*p2=sum-*p2;

}

voidmain()

{inta=2,b=3;

fun(&a,&b);

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

}

A、3,3

B、2,2

C、3,2

D、2,3

17.若有以下定义,能输出字母'W'的语句是()。

structclass

{intnum;

charname[8];

};

structclassa[5]={{3,"Zheng"},{5,"Lin"},{7,"Wang"},{9,"Ma"},{11,"Zao"}};

A、printf("%c\n",a[2].name[0]);

B、printf("%c\n",a[3].name[0]);

C、printf("%c\n",name[3][0]);

D、printf("%c\n",name[0]);

18.以下程序的运行结果是()。

#include

voidmain()

{structdata

{intx;

inty;

intsum;

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

structdata*p=a;

inti;

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

(*(p+i)).sum=(*(p+i)).x+(*(p+i)).y;

for(;p

printf("%3d",p->sum);

}

A、9115

B、5911

C、1195

D、9511

19.下列错误的语句是()。

A、enumcar{K,M=3,N};

B、enumcar{A,B,C};

C、enumcar{D=2,E,F=6};

D、enumcar{1,A,B};

20.文件操作的一般步骤是()。

A、定义文件指针,定位指针,读/写文件

B、定义文件指针,打开文件,读/写文件,关闭文件

C、打开文件,定义文件指针,读/写文件,关闭文件

D、打开文件,读/写文件,关闭文件

21、C源程序的3种基本结构是分支结构、循环结构和()结构。

A、转移

B、顺序

C、递归

D、嵌套

22、若已定义:

inta,b;语句a=(b=2,a=3,a*b);执行后变量a的值为()。

A、2

B、4

C、3

D、6

23、若已定义:

inta=7,b;能使变量b值为2的赋值表达式是()。

A、b=(a++)-6

B、b=(a+7.8)/8

C、b=(a++)/3

D、b=a-(4++)

24、若已定义:

intx=7;floaty=1534.678;以下语句中能输出71534.678的是()。

A、printf("%d%f",x,y);

B、printf("%d%d",x,y);

C、printf("%d%.3f",x,y);

D、printf("%.3f%.3f",x,y);

25、定义:

inta=2,b=1;则表达式a||!

b的值为()。

A、1

B、2

C、3

D、0

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

inta=6;

switch(a++)

{

case7:

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

case6:

printf("%d",a++);break;

default:

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

}

A、9

B、8

C、7

D、8

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

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

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

if(i%2)

a[i]+=2;

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

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

A、67452

B、64523

C、76543

D、74523

28、若已定义:

inta[5][3];则表达式&a[3][1]-&a[0][0]的值为()。

A、4

B、11

C、9

D、10

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

charstr1[20]="nicetomeetyou!

",str2[8]="Nice";

strcpy(str1,str2);

printf("%s",str1);

A、Nicetomeetyou!

B、N

C、nice

D、Nice

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

#include

intfunc()

{staticintm=1;

m+=2;

returnm;

}

voidmain()

{inti;

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

printf("%3d",func());

}

A、222

B、333

C、357

D、246

31、下列正确的#include命令行是()。

A、#includemath.h

B、#include

C、#include{math}

D、#include"math"

32、下列错误的语句是()。

A、int*p=10;

B、char*str="yellow";

C、char*str;str="yellow";

D、inta=10,*p;*p+1=a;

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

#include

voidmain()

{chara[]="aaabbb";

char*p=a;

for(;*p!

='\0';p++)

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

}

A、aaabbb

aabbb

abb

B、aaabbb

aabbb

abbb

bbb

bb

b

C、bbb

bb

b

D、aaa

aa

a

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

#include

voidmain()

{union

{intnum;

charc;

}a;

a.c='A';

a.num=a.c+32;

printf("%c\n",a.num);

}

A、97

B、A

C、a

D、32

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

#include

voidmain()

{structcolor

{intnum;

charc;

}cx[5]={{1,'R'},{2,'G'},{3,'B'},{4,'Y'},{5,'W'}};

structcolor*p=cx;

inti;

for(i=4;i>=0;i--)

printf("%c",(p+i)->c);

}

A、RGBYW

B、GRWYB

C、BYWRG

D、WYBGR

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

#include

voidmain()

{enumWeekday{red=5,green=1,blue,white};

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

}

A、3

B、7

C、2

D、4

37、要使C源程序转换成以二进制形式表示的目标程序,应使用()。

A、解释程序B、编辑程序C、编译程序D、编码程序

38、若已定义:

inta;语句a=13%6-(3/5);执行后变量a的值为()。

A、1.4B、0.4C、2.4D、1

39、若已定义:

charchr;doublea;拟从键盘将'A'和6分别赋予变量chr和a,正确的输入语句是()

A、scanf("%d%lf",&chr,&a);

B、scanf("%d%f",&chr,&a);

C、scanf("%c%f",&chr,&a);

D、scanf("%c%lf",&chr,&a);

40、若已定义:

inta=3,b=4,c;语句c=a>b;执行后变量c的值为()。

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

41、若已定义:

inta=3;floatx=1.5;表达式值不等于2的是()。

A、a=a/xB、a=(float)a/xC、(int)(a/x)D、a/(int)x

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

inta=4,b=5;

if(a

printf("True:

%d\n",++a);

else

printf("False:

%d\n",b++);

A、False:

5B、True:

4C、False:

4D、True:

5

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

charstr[15]="Information";

str[4]='\0';

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

A、5B、15C、11D、4

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

#include

intfun(intn)

{if(n==1)

return

(1);

else

return(n*fun(n-1));

}

voidmain()

{intx;

x=fun

(2);}

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

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

#include"stdio.h"

#defineN3

#defineM6

voidmain()

{inti,s=0;

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

s+=M;

printf("%3d",s);

}

A、18B、15C、12D、9

46、若已定义:

inta[10]={2,3,5,6,8,10,1,4,7,9};int*p=a;则表达式*(p+3)的值为()。

A、8B、3C、5D、6

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

#include

voidmain()

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

int*p=a,i;

while(p

p++;

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

{p--;

printf("%3d",*p);

}}

A、54321B、654321C、123456D、12345

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

#include

voidmain()

{uniondata

{inta;

charb;

floatc;

}x[2];

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

}

A、4B、8C、7D、14

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

#include

voidmain()

{structdata

{intx;

floaty;

}a[5]={{1,2.3},{2,5.8},{3,2.7},{4,3.2},{5,3.9}};

structdata*p=a;

inti;

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

printf("%5.1f",(p+i)->y);}

A、2.74.03.25.03.9

B、1.02.32.05.83.0

C、2.35.82.73.23.9

D、1.02.03.04.05.0

50、若已定义:

typedefintINTEGER;INTEGERx,*p;下列叙述正确的是()。

A、不能用INTEGER来定义变量

B、程序中可用INTEGER定义整型变量

C、x,p都是int型变量

D、x,p都是指针变量

51、下列()为合法的数值常量。

A、E7

B、"abc"

C、6,860

D、.686

52、下列表达式值类型与其余三个不同的是()。

A、6.0/5

B、int(6.0/5.0)

C、(int)6.0/5.0

D、6/5.0

53、下列表达式值相等的是()。

A、4/3与4%3

B、a++与++a

C、a+1与a++

D、3/2与1.5

54、若已定义:

inta=0,b=2,c=3;表达式!

a+b

A、0

B、2

C、3

D、1

55、若已定义:

inta[][3]={1,2,3,4,5,6,7,8};下列叙述正确的是()。

A、数组a的行数为8

B、数组a包含8个元素

C、元素a[1][2]的初值为6

D、数组a的第一维大小可以取任意值

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

#include

intfunc()

{staticintm=1;

m+=2;

returnm;

}

voidmain()

{inti;

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

printf("%3d",func());}

A、333B、357C、222D、246

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

#include"stdio.h"

#defineN3

#defineM6

voidmain()

{inti,s=0;

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

s+=M;

printf("%3d",s);

}

A、12B、18C、9D、15

58、下列错误的语句是()。

A、inta=10,*p;*p+1=a;

B、int*p=10;

C、char*str="yellow";

D、char*str;str="yellow";

59、以下程序段运行后变量y的值为()。

inta=5,y;

y=a<<1;

A、10B、1C、4D、6

60、C语言将文件分为()两类。

A、八进制码文件和十六进制码文件

B、八进制码文件和二进制码文件

C、ASCII码文件和二进制码文件

D、ASCII码文件和十六进制码文件

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

intx=5;

if(x==0)

printf("%3d",x++);

elseif(x>0)

printf("%3d",x+2);

else

printf("%3d",x+3);

A、7B、6C、3D、1

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

inta=0,i=0;

while(i<=5)

{++i;

if(i%3==1)

continue;

a+=i;

}

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

A、5B、16C、21D、0

63、以下程序段执行后,a[5]元素的值为()。

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

a[5]=a[1]+a[2];

A、3B、5C、6D、0

64、若已定义:

inta[4][3];则合法引用数组元素的是()。

A、a[4][1]B、a[][3]C、a[3][]D、a[0][0]

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

#include"stdio.h"

#defineM3

#defineN5

voidmain()

{inta;

a=M+N*6;

printf("%3d",a);

}

A、33B、23C、48D、30

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

charstr[3][10]={"China","Fujian","Fuzhou"};

char(*p)[10];

p=str;

printf("%s",*(p+1));

A、ChinaB、FujianC、CD、Fuzhou

67、下列叙述错误的是()。

A、一个联合体变量占用的内存大小是各成员所需内存容量之和

B、一个联合体变量占用的内存大小是占内存容量最大的成员所需容量

C、联合体类型可以出现在结构体类型定义中

D、一个结构体变量占用的内存大小是各成员所需内存容量之和

68、文件操作函数fread(buffer,size,count,fp);中buffer代表()。

A、一个指针变量,它存放数据缓冲区的地址

B、一个整型变量,代表要读入的数据项总数

C、一个文件指针变量,指向要读的文件

D、一个存储区,存放要读的数据项

69、关于C语言数据类型,叙述正确的是()。

A、数组是基本类型

B、常量没有数据类型

C、指针类型属于构造类型

D、定义变量必须指定变量的数据类型

70、若已定义:

chara='A';intb=5;下列表达式错误的是()。

A、a==bB、a++C、a==AD、a=a-b

71、若已定义:

inta;语句

if(!

(a%3))

a--;

else

a++;

与下列()语句等价。

A、a=(a%3?

a--:

a++);B、a%3?

a++:

a--;

C、a=(!

(a%3)?

a++:

a--);D、a%3?

a--:

a++;

72、下列叙述正确的是()。

A、定义数组时,如果省略类型说明,默认为int型

B、定义数组后,可通过赋值运算符"="对该数组名直接赋值

C、数组名代表数组所占存储区的首地址,是指针变量

D、字符数组可以存放字符串

73、下列叙述正确的是()。

A、声明有参函数时必须明确函数类型和参数类型

B、被调用函数至少含有一个形式参数,且必须有返回值

C、函数的定义和调用都不可以嵌套

D、函数可以返回一个值,但不能没有返回值

74、若已定义:

inta=10,*p;p=&a;下列叙述错误的是()。

A、*(&a)等价于aB、&(*p)等价于p

C、*(&p)等价于aD、&a等价于&(*p)

75、以下结构类型的嵌套定义后,该结构类型变量x所占用的内存字节数是()。

structbirthday

{intyear;

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

当前位置:首页 > PPT模板 > 动物植物

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

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