广西计算机二级考试Word下载.docx

上传人:b****5 文档编号:19706090 上传时间:2023-01-09 格式:DOCX 页数:8 大小:18.65KB
下载 相关 举报
广西计算机二级考试Word下载.docx_第1页
第1页 / 共8页
广西计算机二级考试Word下载.docx_第2页
第2页 / 共8页
广西计算机二级考试Word下载.docx_第3页
第3页 / 共8页
广西计算机二级考试Word下载.docx_第4页
第4页 / 共8页
广西计算机二级考试Word下载.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

广西计算机二级考试Word下载.docx

《广西计算机二级考试Word下载.docx》由会员分享,可在线阅读,更多相关《广西计算机二级考试Word下载.docx(8页珍藏版)》请在冰豆网上搜索。

广西计算机二级考试Word下载.docx

short 

d;

则表达式(c*b+a)*d的结果类型是( 

A、char 

B、int 

C、double 

D、float

4、若有说明语句:

w=1,x=2,y=3,z=4;

则表达试w>

x?

w:

z>

y?

z:

x的值是( 

A、4 

B、3 

C、2 

D、1

5、设x,y 

为int型变量,则执行下列语句后,y的值是( 

x=5;

y=x++*x++;

y=--y*--y;

A、529 

B、2401 

C、1209 

D、625

6、C语言中函数返回值的类型是( 

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

B、调用函数的类型

C、总是int型 

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

7、凡是在函数中未指定存储类别的变量,其隐含的存储类别是( 

A、自动 

B、静态 

C、外部 

D、寄存器

8、在源程序的一个文件中定义的全局变量的作用域是( 

A、本文件的全部范围 

B、该程序的全部范围

C、一个函数的范围 

D、从定义该变量的位置开始至该文件的结束

9、以下不正确的描述是( 

A、break语句只能用于循环语句和switch语句

B、在switch语句中,break语句的作用也可用continue语句来替代

C、在循环语句中,使用continue语句是为了结束本次循环,而不是终止循环的执行

D、在循环语句中,使用break语句是为了使流程跳出循环体,提前结束循环

10、若有宏定义 

#define 

mod(x,y) 

x%y 

则执行以下程序段后,输出为( 

z,a=15,b=100;

z=mod(b,a);

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

A、11 

B、10 

C、6 

D、宏定义不合法

11、若有说明语句:

s1[4]=”12”;

*ptr;

则执行下列语句后输出为( 

ptr=s1;

printf(“%c\n”,*(ptr+1));

A、字符‘2’ 

B、整数2 

C、字符串“12” 

D、字符‘1’

[1][2]

[page_break]

第二部分:

简单程序(12题,共30分)

21、运行下面的程序,其输出是( 

main()

a[]={2,4,6,8,10},y=1,x,*p;

p=&

a[1];

for(x=0;

x<

3;

x++)

y+=*(p+x);

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

}

A、17 

B、18 

C、19 

D、20

22、运行下面的程序,其输出是( 

{int 

i=1;

while(i<

19)

if(i++%5!

=3) 

continue;

else 

printf(“%4d”,i);

printf(“\n”);

A、2 

11 

13 

15 

17 

18

C、4 

14 

19 

D、3 

19

23、运行下面的程序后,其正确的输出是( 

{static 

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

static 

*pa[5]={&

a[0], 

&

a[1], 

a[2], 

a[3], 

a[4]};

**p,i;

p=pa;

for(i=0;

i<

5;

i++)

{printf(“%d\t”,**p+2);

p++;

A、9 

10 

B、7 

5

C、7 

D、2 

6

24、下面程序运行后,其输出是( 

i;

n=2;

while(++n<

20)

{i=1;

while(++i<

n)

{if(n%i==0)

break;

if(i==n-1)

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

20

[1]

25、下面程序运行后,其输出是( 

i,j,k;

func();

i=1,j=2,k=3;

printf(“%d\n”,func((j+=k,j++),(i,i++,++i)));

func(int 

x,int 

y)

z;

z=x%y;

return(z);

B、0 

C、1 

D、3

26、下面程序运行后,其输出是( 

x,y;

one()

a,b;

a=25,b=10;

x=a-b;

y=a+b;

a=9,b=5;

x=a+b;

y=a-b;

one();

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

A、14,4 

B、14,35 

C、15,35 

D、15,4

27、下面程序运行后,其输出是( 

#include 

<

stdio.h>

void 

printd(int 

i);

n=123;

printd(n);

if(n<

0)

{n=-n;

putchar(‘-‘);

putchar(n%10+’0’);

if((i=n/10)!

=0)

printd(i);

A、123 

B、321 

C、3 

28、下面程序运行后,其输出是( 

struct 

sample{

*ch;

};

f1(struct 

sample 

parm);

{struct 

arg;

arg.a=1000;

arg.b=100;

arg.ch=”abcd”;

f1(arg);

parm)

parm.a+=parm.b;

parm.ch[2]=’x’;

printf(“%d\n”,parm.a);

printf(“%s\n”,parm.ch);

A、1000 

B、1100 

C、1100 

D、100

Abcd 

abcd 

abxd 

abcd

29、下面程序运行后,其输出是( 

s[30]=”abcdefg”;

t[]=”abcd”;

i,j;

i=0;

while(s[i]!

=’\0’)

i++;

j=0;

while(t[j]!

{s[i+j]=t[j];

j++;

s[i+j]=’\0’;

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

A. 

abcdabcdefg 

B. 

abcdefg 

C. 

D. 

abcdefgabcd

30、下面程序运行后,其输出是( 

a[4][4],i,j,k;

4;

for(j=0;

j<

j++)

a[i][j]=i+j;

for(i=1;

for(j=i+1;

k=a[i][j];

a[i][j]=a[j][i];

a[j][i]=k;

{printf(“\n”);

printf(“%4d”,a[i][j]);

A、0 

C、0 

1

2

3

31、下面程序运行后,其输出是( 

sub();

s[10]=”a 

program”;

num=4;

sub(s,0,num-1);

sub(s,num,6);

sub(s,0,6);

sub(char 

*s,int 

num1,int 

num2)

t,*p;

p=s+num2;

s=s+num1;

while(s<

p)

{t=*s;

*s=*p;

*p=t;

s++;

p--;

A.program 

B.gram 

pro 

C.pro 

gram 

D.ogra 

pram

32、运行下面程序,从键盘输入四个字符xyz#,其输出是( 

"

stdio.h"

recursion();

recursion()

{char 

c=getchar();

putchar(c);

if(c!

=’#’)

A、xyz# 

B、xyz#xyz# 

C、xyz##zyx 

D、xyzxyz

第二卷(共30分)

说明:

程序填空题,在空栏处填入适当的字符、语句,以构成一个正确的C语言程序。

每空栏3分,两大题共10个空栏,全对得30分。

试题一:

下面的程序是将一个十六进制数字字符串转换成与它等价的十进制整数值并输出。

十六进制数的字符是从0到9和a到f或A到F。

主函数负责收集字符,并判别它们是否是十六进制字符,函数htoi负责转换工作。

maxline 

100

eof 

-1

yes 

no 

0

htoi();

c,i,isdigit;

t[maxline];

isdigit=no;

while((c=_______________)!

=eof&

maxline-1)

if(c>

=’0’&

c<

=’9’||c>

=’a’&

=’f’|| 

c>

=’A’&

=’F’)

isdigit=yes;

t[i++]=___________;

if(isdigit==yes)

t[i]=’\0’;

printf(“%d”,______________);

htoi(char 

*s)

i,n;

n=0;

s[i]!

=’\0’;

if(s[i]>

s[i]<

=’9’) 

n=n*16+s[i]-______________;

=’f’) 

n=n*16+s[i]-‘a’+10;

=’F’) 

n=n*16+s[i]-‘A’+10;

return___________;

试题二:

以下程序的功能是应用近似公式计算 

e

计算每项分母的值,共取nmax项之和作为e 

的近似值。

近似公式:

=1+x+x 

/2!

/3!

+……+ 

/(nmax-1)!

f2(int 

if(n==1)

return 

1;

return____________________;

f1(float 

j=______________;

___________;

j=j*x;

j;

nmax 

x,exp=1.0;

n;

printf(“input 

value:

”);

scanf(“%f”,&

x);

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

for(n=1;

n<

nmax;

n++)

exp=______________;

printf(“x=%f,exp(x)=%f\n”,x,_______________);

答案:

第一卷:

1~5 

BCCAA 

6~10 

DADBB 

11~15 

ADBCA 

16~20 

ABBDD

21~25 

CCABA 

26~30 

CBCDA 

31~32 

DC

第二卷:

getchar()

c

htoi(t)

‘0’

n

f2(n-1)*n

=n

exp+f1(x,n)/f2(n)

exp

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

当前位置:首页 > 医药卫生 > 基础医学

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

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