2016年9月全国计算机等级考试二级c语言笔试试题(含参考答案) 下载本文

内容发布更新时间 : 2024/11/15 5:40:28星期一 下面是文章的全部内容请认真阅读。

(35) 下面函数的功能是

A) 求字符串的长度 C) 将字符串x复制到字符串y

int funl(char * x) { char * y=x; while(*y++); return(y-x-1);}

B) 比较两个字符串的大小

D) 将字符串x连接到字符串y后面

(36) 若fp是指向某文件的指针,且已读到该文件的末尾,则C语言函数feof(fp)的返回值是

A) EOF B) -1 C) 非零值 (37) 根据下面的定义,能打印出字母M的语句是

A) printf(\D) printf(\B) printf(\C) printf(\

struct person { char name[9]; int age;}; struct person class[10]={\

\\\

(38) 下面程序的输出是

A) -1 B) 0 C) 1 main()

{ int x=100, a=10, b=20, ok1=5, ok2=0; if(a

if(b!=15)

if(! ok1)

x=1; else if(ok2)x=10; x=-1;

printf(\(39) 下面程序的输出是

A) xyzabcABC B) zabcABC C) yzabcABC #include #include main()

{ char *p1=\strcpy(str+2,strcat(p1,p2)); printf(\(40) 下面程序的输出是

A) 741 B) 852 C) 963 main()

D) NULL D) 不确定的值

D) xyabcABC

D) 875421

{ int y=9;

for( ; y>0; y--)

{ if(y%3==0)

{ printf(\}. }

(41) 下面程序的输出是

A) 100 B) 160 C) 120 main()

{ char x=040;

printf(\(42) 下面程序的输出是

A) 0 B) 1 C) 3 main()

{ struct cmplx { int x; int y; } cnum[2]={1,3,

2,7};

printf(\(43) 下面程序的输出是

A) 23 B) 26 C) 33 int aa[3][3]={{2},{4},{6}}; main()

{ int i, * p=&aa[0][0]; for(i=0; i<2;i++)

{ if(i==0)

aa[i][i+1]=*p+1; else

++p;

printf(\} (44) 下面程序的输出是

A) 23 B) 24 C) 25 void prtv(int *x)

printf(\main()

{ int a=25; prtv(&a);} (45) 下面程序的输出是

A) 3 B) 4 C) 6 fun3(int x) static int a=3; a+=x;

return(a);}

D) 64

D) 6

D) 36

D) 26

D) 9

main()

{ int k=2, m=1, n; n=fun3(k); n=fun3(m);

printf(\

(46) 已知字符0的ASCII码为十六进制的30,下面程序的输出是

A) 6 B) 9 C) 0 main()

{ union { unsigned char c;

unsigned int i[4]; } z; z.i[0]=0x39; z.i[1]=0x36;

printf(\(47) 下面程序的输出是

A) 60 B) 68 C) 99 main()

{ int a[3][4]={ 1,3,5,7,9,11,13,15,17,19,21,23}; int ( *p)[4]=a,i,j,k=0; for(i=0; i<3; i++)

for(j=0; j<2; j++)

k=k+*( *(p+i)+j);

printf(\(48) 下面程序的输出是

A) 1 B) 2 C) 7 int m=13;

int fun2(int x, int y) { int m=3;

return(x*y-m); }

main()

{ int a=7, b=5;

printf(\(49) 下面程序的输出是

A) 32 B) 16 C) 8 typedef union { long x[2];

int y[4]; char z[8]; } MYTYPE;

MYTYPE them; main()

{ printf(\

D) 3

D) 108

D) 10

D) 24

(50) 下面程序的输出是

A) ABCD B) A C) D D) ABCD

BCD B C ABC CD C B AB D D A A char s[]=\main() { char *p;

for(p=s; p

二、填空题(每空2分,共40分)

请将每空的正确答案写在答题卡上【1】-【20】序号后的横线上,答在试卷上不得分。 (1) 8位无符号二进制数能表示的最大十进制数 【1】 。

(2) 将原码表示的有符号二进制数11001101转换成十进制数是 【2】 。 (3) DOS系统的命令处理程序是 【3】 。

(4) 若当前盘为A盘,要显示C盘的当前目录又不改变当前盘,使用的命令是 【4】 。 (5) 硬盘C的目录结构示意图如下 C:\\ DOS系统文件 D2 D1 AUTOEXEC.BAT

M.BAT M.EXE M.COM 其中AUTOEXEC.BAT的内容为

PROMPT $p$g CD D1

现用C盘启动后,系统提示符为 【5】 。

(6) 下面程序的输出是 【6】 。

main() { int x=2; while(x--);

printf(\

(7) 下面程序的输出是 【7】 。

main()

{ int a[]={ 2,4,6}, *prt=&a[0], x=8,y,z; for(y=0; y<3; y++)

z=(*(prt+y)