广西计算机二级考试Word下载.docx
《广西计算机二级考试Word下载.docx》由会员分享,可在线阅读,更多相关《广西计算机二级考试Word下载.docx(8页珍藏版)》请在冰豆网上搜索。
![广西计算机二级考试Word下载.docx](https://file1.bdocx.com/fileroot1/2023-1/9/2dfbf17d-cf9a-478e-a997-08cef8cce9ed/2dfbf17d-cf9a-478e-a997-08cef8cce9ed1.gif)
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
5
7
9
11
13
15
17
6
18
C、4
14
19
D、3
8
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
4
10
B、7
2
5
C、7
D、2
3
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
1
C、0
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
的近似值。
近似公式:
e
=1+x+x
/2!
+
x
/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