湖北省计算机二级C语言考试Word格式.docx
- 文档编号:18350207
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:17
- 大小:22.22KB
湖北省计算机二级C语言考试Word格式.docx
《湖北省计算机二级C语言考试Word格式.docx》由会员分享,可在线阅读,更多相关《湖北省计算机二级C语言考试Word格式.docx(17页珍藏版)》请在冰豆网上搜索。
15、在Windows98的资源管理器中,查找文件或文件夹的操作是通过菜单(C)来实现的。
A、文件B、编辑C、工具D、查看
16、若以下变量均为整型且num=sum=7;
则计算表达式sum=num++,sum++,++num后sum的值为(B)
A、7B、8C、9D、10
17、判断char型变量C1是否为大写字母的正确表达式是(C)
A、’A’<
=C1<
=’Z’
B、(C1>
=’A’)&
(C1<
=’Z’)
C、(C1>
&
=’Z’)
D、(’A’<
=C1)AND(’Z’>
=C1)
18、下列程序段的运行结果是(C)
charc[]=“\t\v\\\owill\n”
printf(“%d”,strlen©
);
A、14B、3C、9
D、字符串中有非法字符,输出值不确定
19、若有说明:
charc=’9’,*sp1,*sp2;
以下均正确的一组赋值语句是(A)
A、sp1=&
c;
sp2=sp1;
B、sp1=&
sp2=&
sp1;
C、sp1=&
sp2=*sp1;
D、sp1=&
*sp2=*sp1;
20、根据定义和数据的输入方式,输入语句的正确形式为(B)。
已有定义:
floatf1,f2;
数据的输入方式:
4.523.5
A、scanf(“%f,%f”,&
f1,&
f2);
B、scanf(“%f%f”,&
f2);
C、scanf(“%f3.2%2.1f”,&
D、scanf(“%3.2f%2.1f”,&
21、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)
A、7B、8C、6D、2
22、判断字符串s1是否大于字符串s2,应当使用(D)
A、if(s1>
s2)B、if(strcmp(s1,s2))
C、if(strcmp(s2,s1)>
0)D、if(strcmp(s1,s2)>
0)
23、当定义一个结构体变量时系统分配给它的存是(D)
A、结构体第一个成员所需的存量
B、结构体最后一个成员所需的存量
C、结构体成员中占存量最大者所需的容量
D、结构体中各成员所需存量的总和
24、没有说明:
doubley=0.5,z=1.5;
intx=10;
则能够正确使用C语言库函数的赋值语句是(D)
A、z=ln(y)+abs(y);
B、y=log10(y)+pow(y);
C、z=sqrt(y-z);
D、x=(int)(atan2((double)x,y)+exp(y-0.2));
25、若运行以下程序时,从键盘输入2473,则下面程序的运行结果是(A)
#include<
stdio.h>
voidmain(void)
{intc;
while((c=getchar())!
='
\n'
)
switch(c-'
2'
{case0:
case1:
putchar(c+4);
case2:
break;
case3:
putchar(c+3);
default:
putchar(c+2);
break;
}
printf("
\n"
A、668977 B、668966
C、66778777 D、6688766
26、建立函数的主要目的之一是(B)
A、提高程序的执行效率B、提高程序的可读性
C、减少程序的篇幅D、减少程序文件所占存
27、若有以下说明和语句,则对结构体变量std中成员id的引用方式不正确的是(B)
structwork
{intid;
intname;
}std,*p;
p=&
std;
A、std.idB、*p.id
C、(*p).idD、p->
id
28、下列运算符中优先级最高的是(B)
A、<
B、+C、&
D、!
=
29、对for(表达式1;
;
表达式3)可理解为(B)
A、for(表达式1;
0;
表达式3)
B、for(表达式1;
1;
表达式3)
C、for(表达式1;
表达式1;
D、for(表达式1;
表达式3;
30、C语言规定,函数返回值的类型是由(D)
A、return语句中的表达式类型所决定的
B、调用该函数时的主调函数类型所决定
C、调用函数时系统临时决定
D、在定义该函数时所指定的函数类型所决定
31、以下对枚举类型名ee的定义中正确的是(A)
A、enumee{A,B,C,D};
B、enumee{‘A’,’B’,’C’,’D’}
C、enumee={A,B,C,D}
D、enumee={‘A’,’B’,’C’,’D’}
32、在C语言中,十进制的47可等价地写为(D)
A、2fB、02fC、57D、057
33、若运行时给变量x入12,则以下程序的运行结果是(A)
voidmain(void)
{intx,y;
scanf(“%d”,&
x);
y=x>
12?
x+10:
x-12;
%d\n"
y);
}
A、0B、22C、12D、10
34、对两个数组a和b进行如下的初始化:
chara[]=”ABCDEF”;
charb[]={‘A’,’B’,’C’,’D’,’E’,’F’}
则以下叙述正确的是(D)
A、a与b数组完全相同
B、a与b长度相同
C、a中存放字符串,b中存放字符
D、a数组比b数组长度长
35、凡是函数中未指定存储类别的局部变量,其隐含的存储类别是(A)变量
A、自动(auto)B、静态(static)
C、外部(extern)D、寄存器(register)
36、若有以下定义和说明,以下不能将文件容读入数组x中的语句(组)是(C)
structss
{
intn;
floatx;
}x[30];
FILE*fp;
A、for(i=0;
i<
10;
i++)/\fread(&
x[i],sizeof(structss),1L,fp);
B、for(i=0;
x[i],sizeof(structss),2L,fp);
C、for(i=0;
i++)/\fread(x[i],sizeof(structss),1L,fp);
D、for(i=0;
i++)/\fread(x,sizeof(structss),1L,fp);
37、以下C程序正确的运行结果是(C)
{longy=-43456;
printf("
y=%-81d\n"
y=%-081d\n"
y=%081d\n"
y=%+81d\n"
A、y=_-43456y=-_43456y=-0043456y=-43456
B、y=-43456y=-43456y=-0043456y=_-43456
C、y=-43456y=-43456y=-0043456y=-43456
D、y=_-43456y=-43456y=00043456y=+43456
38、以下程序的输出结果是(B)
{intx=2,y=-1,z=2;
if(x<
y)
if(y<
0)z=0;
elsez+=1;
y=%d\n"
z);
A、3B、2C、1D、0
39、有一堆零件(100到200之间),如果分成4个零件一组的若干组,则多2个零件;
若分成7个零件一组,则多3个零件;
若分成9个零件一组,则多5个零件。
下面程序是求这堆零件总数,则选择(D)
{inti;
for(i=100;
200;
i++)
if((i-2)%4==0)
if(!
((i-3)%7))
if(())
%d"
i);
A、i%9=5B、i%9!
=5C、(i-5)%9!
=0D、i%9==5
40、下述对C语言字符数组的描述中错误的是(C)
A、字符数组可以存放字符串
B、字符数组的字符可以整体输入输出
C、可以在赋值语句过赋值运算符“=”对字符数组整体赋值
D、可以用关系运算符对字符数组中的字符进行比较
41、下面程序的功能是从键盘输入一行字符,统计其中有多少单词,单词之间用空格分隔。
请选择填空(C)
#include<
{chars[80],c1=‘’,c2;
inti=0,num=0;
get(s);
while(s[i]!
=’\0’)
{c2=s[i];
if(i>
0)c1=s[i-1];
if((l))num++;
i++;
Theseare%dwords.\n"
num);
A、c1==’’&
c2==’’
B、c1!
=’’&
C、c1==’’&
c2!
=’’
D、c1!
=’’
42、若有宏定义#definez(x,y)x*y,则执行以下程序段后,z的值为(B)
intz;
z=z(3+5,4);
A、32B、23C、17D、20
43、当说明一个共同体变量时系统分配给它的存是(C)
A、共同体第一个成员所需的存量
B、共同体最后一个成员所需的存量
C、共同体成员中占存量最大者所需的容量
D、共同体中各成员所需存量的总和
44、设有以下结构体类型数组的定义,且数组mini的10个元素都已赋值,若要将这些元素写到文件fp中,以下不正确的形式是(B)
^structabc^{^inta;
charb;
floarc[4];
^}^mini[10];
A、fwrite(mini,10*sizeof(structabc),1,fp)
B、fwrite(mini,5*sizeof(structabc),5,fp)
fwrite(mini,sizeof(structabc),1,fp)
D、fwrite(mini,sizeof(structabc),10,fp)
45、函数fgets(string,m,fp)的作用是(D)
A、从fp所指向的文件中读取长度不超过m的字符串,存入由指针string指向的存区域
B、从fp所指向的文件中读取长度为m字符串,存入由指针string指向的存区域
C、从fp所指向的文件读取m个字符串,存入由指针string指向的存区域
D、从fp所指向的文件读取长度不超过m-1的字符串,存入由指针string指向的存区域
46、微机主存有ROM和RAM,计算机突然停电后,存储的信息就会丢失的是(RAM)
47、字符的ASCII编码在机器中的表示方法准确地描述应是使用八位二进制代码,最高位为(0)
48、与十进制数254等值的二进制数是(11111110)
49、在Windows98的操作过程中,光标所指的图标称为(活动)图标
50、在Windows98中,要查找所有的DOC文档文件,应在“查找”对话框“名称和位置”标签的“名称”文本框中输入(*doc)
51、根据以下函数关系,对输入的每个x值,计算出相应的y值。
xy
x<
00
0<
=x<
10x
10<
1010
20<
40-0.5+20
程序:
{intx,c,m;
floaty;
0)c=-1;
elsec=(x/10);
switch(c)
{case-1:
y=0;
case0:
y=x;
case1:
y=10;
case2:
case3:
y=-0.5*x+20;
default:
y=-2;
if(y!
=-2)printf("
y=%f"
elseprintf("
error\n"
52、下面程序的功能是统计从键盘输入的字符中的数字字符个数,用换行符‘\n’结束循环,请使用字符型数据填空。
intn=0,c;
c=getchar();
while(c!
=’\n’)
{if(c>
=’0’&
c<
=’9’)n++;
53、将以下含有switch语句的程序段改写成对应的含有非嵌套if语句的程序段,含有switch语句的程序段:
ints,t,m;
…
t=(int)(s/10);
switch(t)
{case10:
m=5;
case9:
m=4;
case8:
m=3;
case7:
m=2;
case6:
m=1;
m=0;
含有非嵌套if语句的程序段:
ints,m;
if((s<
110)&
(s>
=100))
m=5;
if(s<
100&
s>
=90)m=4;
90&
=80)m=3;
80&
=70)m=2;
70&
690)m=1;
60)||(s>
109))
(m=0);
54、打印100以个位数为6且能被3整除的所有数。
{inti,j;
for(i=0;
(i<
10);
{j=i*10+6;
if(j%3!
=0)continue;
printf(“%d”,j);
55、以下程序实现输出x,y,z三个数中的最大者
{intx=4,y=6,z=7;
int(u,v);
if(x>
y)u=x;
elseu=y;
if(u>
z)v=u;
elsev=z;
prinf(“v=%d”,v);
56、假设a数组中的数据已按又小到大的顺序存放,以下程序可把a数组中相同的数据删除只剩一个,然后以每行4个数据的格式输出a数组。
#defineM10
main()
{inta[M],i,j,n;
M;
i++)
scanf(“%d”,a+i);
n=i=M-1;
while(i>
=0)
{if(*(a+i)==*(a+i-1))
{for(j=(i);
j<
n;
j++)
*(a+j)=*(a+j+1);
n--;
i--;
for(i=1;
n+1;
{printf(“%4d”,*(a+i-1));
if(i%4==0)printf(“\n”);
printf(“\n”);
57、下面程序的功能是从三个红球,五个白球,六个黑球中任意取出八个球,且其中必须有白球,输出所有可能的方案。
{inti,j,k;
printf(“\nhongbaihei\n”);
for(i=1;
=3;
for((j=1);
=5;
{k=8-i-j;
if(k>
-1&
k<
7)
printf(“%3d%3d%3d\n”,i,j,k);
58、设有三人的和年龄存在结构数组中,以下程序输出三人中年龄居中者的、年龄,请在空白处填入正确容。
staticstructman
{charname[20];
intage;
}person[]={“li-ming”,18,“wang-hua”,19,“zhang-ping”,20};
{inti,j,max,min;
max=min=person[0].age;
3;
if(person[i].age>
max)(max=person[i].age);
elseif(person[i].age<
min)min=person[i].age;
if(person[i].age!
=max&
person[i].age!
=min)
{printf(“%s%d\n”,person[i].name,person[i].age);
59、下面程序将二维数组a的行和列元素互换后存到另一个二维数组b中。
{inta[2][3]={{1,2,3},{4,5,6}};
intb[3][2],i,j;
printf(“arraya:
\n”);
=1;
{for(j=0;
(j<
=2);
{printf(“%5d”,a[i][j]);
(b[j][i]=a[i][j]);
printf(“arrayb:
=2;
j++)printf(“%5d”),b[i][j]};
60、下面程序以每行4个数据的形式输出a数组,
a[0]存放输入的第1个数据,
#defineN20
{inta[N],I;
N;
i++)scanf(“%d”,(&
a[i]));
{if((i%4==0))(printf(“\n”));
printf(“%3d”,a[i]);
61、请读程序;
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:
a++;
b++;
break;
a++;
printf(“a=%d;
b=%d”,a,b);
上面程序的运行结果是(a=2;
b=1)
62、以下程序段的运行结果是(5,25)
voidff1()
{externintx,y;
inta=15,b=10;
x=a-b;
y=a+b;
intx,y;
{inta=7,b=5;
x=a-b;
ff1();
printf(%d,%d\n”,x,y);
63、若有定义:
doublex[3][5];
则x数组中行下标的下限为(0),列下标的上限为4。
64、若有以下定义和语句,
int*p[3],a[9],i;
for(i=0;
i++)p[i]=&
a[3*i];
则*p[0]引用的是数组元素(a[0])
65、已知字母a的ASCII码为十进制数97;
且设ch为字符型变量,则表达式ch=’a’+’8’-‘3’的值为(102)
66、若有定义:
inta[3][2]={2,4,6,8,10,12};
则*(a[1]+1)的值是(8)
67、C语言所提供的基本数据类型包括(用汉字描述):
单精度型,双精度型,(整),字符和枚举。
68、若有定义:
inta[3][5],i,j;
且(则a[i][j]的地址可用五种形式表示,它们是:
(1)&
a[i][j]
(2)a[i]+j
(3)*(a+j)+j
(4)&
a[0][0]+(5*i+j)
(5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 湖北省 计算机 二级 语言 考试