2004年4月全国计算机等级考试二级C语言笔试试卷
一、 选择题((1)~(40)每题1分,(41)~(50)每题2分,共60分)
1、 1MB等于()
A)1000字节 B)1024字节 C)1000?1000字节 D)1024?1024字节
2、 与十六进制数200等值得十进制数为()
A)256 B)512 C)1024 D)2048
3、 所谓“裸机“是指()
A)单片机B)单板机 C)不装备任何软件的计算机 D)只装备操作系统的计算机
4、 能将高级语言编写的源程序转换为目标程序的是()
A)链接程序 B)解释程序 C)编译程序 D)编辑程序
5、 在64为计算机中,一个字长所占字节数为()
A)64 B)8 C)4 D)1
6、 在Windows环境下,当一个应用程序窗口被最小化后,该应用程序()
A)继续在后台运行 B)继续在前台运行
C)终止运行 D)暂停运行
7、在Windows环境下,能实现窗口移动的操作是()
A)用鼠标拖动窗口中的任何部位 B)用鼠标拖动窗口的边框
C)用鼠标拖动窗口的控制按钮 D)用鼠标拖动窗口的标题栏。
8、 在Windows环境下,PrintScreen键的作用是()
A)打印当前窗口的内容 B)打印屏幕内容
C)复制屏幕到剪贴板 D)复制当前窗口到剪贴板
9、 的通信协议是()
A)TCP/IP B)BBS C)WWW D)FTP
10、 下列叙述中正确的是()
A)计算机病毒只感染可执行文件
B)计算机病毒只感染文本文件
C)计算机病毒只能通过软件复制的方式进行传播
D)计算机病毒可以通过网络或读写磁盘方式进行传播
11、一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是
A)有零个或多个输入 B)有零个或多个输出
C)有穷性 D)可行性
12、 以下叙述中正确的是()
A)C语言的源程序不必通过编译就可以直接运行
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C)C源程序经编译形成的二进制代码可以直接运行
D)C语言中的函数不可以单独进行编译
13、 以下符合C语言语法的实型常量是()
A)1.2E0.5 B)3.14.159E C).5E-3 D)E15
14、 以下4组用户定义标识符中,全部合法的一组是()
A)_main B)If C)txt D)int
enclude -max REAL k_2
sin turbo 3COM _001
15、 若以下选项中的变量已正确定义,则正确的赋值语句是()
A)x1=26.8%3 B)1+2=x2 C)x3=0x12 D)x4=1+2=3;
16、 设有以下定义
int a=0;
double b=1.25;
char c=’A’;
#define d 2
则下面语句中错误的是()
A)a++; B)b++ C)c++; D)d++;
17、 设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式计算结果不相
符的是()
A)(a+b)*h/2 B)(1/2)*(a+b)*h C)(a+b)*h*1/2 D)h/2*(a+b)
18、 有以下程序
main( )
{
int x=102,y=012;
printf(“%2d,%2d
”,x,y);
} 执行后输出结果是()
A)10,01 B002,12 C)102,10 D)02,10
19、以下4个选项中,不能看作一条语句的是()
A){;} B)a=0,b=0,c=0; C)if(a>0); D)if(b==0) m=1;n=2;
20、设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是()
A)scanf(“%d”,pa); B)scanf(“%d”,a);
C)scanf(“%d”,&pa); D)scanf(“%d”,*pa);
21、以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是()
A)if((a>b)&&(b>c)) k=1; B) if((a>b)||(b>c)) k=1
else k=0;
C)if(a<=b) k=0; D)if(a>b) k=1;
else if(b<=c) k=1; else if(b>c) k=1;
else k=0;
22、有以下程序
main( )
{ char k; int I;
for(i=1;i<3;i++)
{ scanf(“%c”,&k);
switch(k)
{ case ‘0’: printf(“another
”);
case ‘1’: printf(“number
”);
}
}
}
程序运行时,从键盘输入:01<回车>,程序执行后的输出结果是()
A) another B)another C)another D)number
number number number number
another number
23、有以下程序
main( )
{ int x=0,y=5,z=3;
while(z-->0&&++x<5) y=y-1;
printf(“%d,%d,%d
”,x,y,z);
} 程序执行后的输出结果是()
A)3,2,0 B)3,2,-1 C)4,3,-1 D)5,-2,-5
24、有以下程序
main( )
{ int i,s=0;
for(i=1;i<10;i+=2) s+=i+1;
printf(“%d
”,s);
} 程序执行后的输出结果是()
A)自然数1~9的累加和 B)自然数1~10的累加和
C)自然数1~9中的奇数之和 D)自然数1~10中的偶数之和
25、有以下程序
main( )
{ int i,n=0;
for(i=2;i<5;i++)
{ do
{ if(i%3) continue;
n++;
} while(!i);
n++;
}
printf(“n=%d
”,n);
} 程序执行后的输出结果是()
A)n=5 B)n=2 C)n=3 D) n=4
26、若程序中定义了以下函数
double myadd(double a,double b)
{ return (a+b);}
并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是()
A)double myadd(double a,b); B)double myadd(double,double);
C)double myadd(double b,double a); D)double myadd(double x,double y);
27、有以下程序
char fun(char x , char y)
{ if(x的
return y;
}
main( )
{ int a=’9’,b=’8’,c=’7’;
printf(“%c
”,fun(fun(a,b),fun(b,c)));
} 程序的执行结果是()
A)函数调用出错 B)8 C)9 D)7
28、设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是()
A)p=1; B)*q=2; C)q=p; D)*p=5;
29、有以下程序
void f(int v , int w)
{ int t;
t=v;v=w;w=t;
}
main( )
{ int x=1,y=3,z=2;
if(x>y) f(x,y);
else if(y>z) f(y,z);
else f(x,z);
printf(“%d,%d,%d
”,x,y,z);
} 执行后输出结果是()
A)1,2,3 B)3,1,2 C)1,3,2 D)2,3,1
30、有以下程序段
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;
b=p[5];
b中的值是()
A)5 B)6 C)8 D)9
31、有以下程序
main( )
{ char a[]=”abcdefg”,b[10]=”abcdefg”;
printf(“%d %d
”,sizeof(a),sizeof(b));
} 执行后输出结果是()
A)7 7 B)8 8 C)8 10 D)10 10
32、有以下程序
void swap1(int c[])
{ int t;
t=c[0];c[0]=c[1];c[1]=t;
}
void swap2(int c0,int c1)
{ int t;
t=c0;c0=c1;c1=t;
}
main( )
{ int a[2]={3,5},b[2]={3,5};
swap1(a); swap2(b[0],b[1]);
printf(“%d %d %d %d
”,a[0],a[1],b[0],b[1]);
} 其输出结果是()
A)5 3 5 3 B) 5 3 3 5 C)3 5 3 5 D)3 5 5 3
33、有以下程序
void sum(int *a)
{ a[0]=a[1];}
main( )
{ int aa[10]={1,2,3,4,5,6,7,8,9,10},i;
for(i=2;i>=0;i--) sum(&aa[i]);
printf(“%d
”,aa[0]);
} 执行后的输出结果是()
A)4 B)3 C)2 D)1
34、有以下程序
int f(int b[][4])
{ int i,j,s=0;
for(j=0;j<4;j++)
{ i=j;
if(i>2) i=3-j;
s+=b[i][j];
}
return s;
}
main( )
{ int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}};
printf(“%d
”,f(a));
} 执行后的输出结果是()
A)12 B)11 C)18 D)16
35、有以下定义
#include
char a[10],*b=a;
不能给数组a输入字符串的语句是()
A)gets(a) B)gets(a[0]) C)gets(&a[0]); D)gets(b);
36、有以下程序
main( )
{ char *p[10]={“abc”,”aabdfg”,”dcdbe”,”abbd”,”cd”};
printf(“%d
”,strlen(p[4]));
} 执行后输出结果是()
A)2 B)3 C)4 D)5
37、有以下程序
int a=2;
int f(int *a)
{return (*a)++;}
main( )
{ int s=0;
{ int a=5;
s+=f(&a);
}
s+=f(&a);
printf(“%d
”,s);
} 执行后输出结果是()
A)10 B)9 C)7 D)8
38、有以下程序
#define f(x) x*x
main( )
{ int i;
i=f(4+4)/f(2+2);
printf(“%d
”,i);
} 执行后输出结果是()
A)28 B)22 C)16 D)4
39、设有以下语句
typedef struct S
{ int g; char h;} T;
则下面叙述中正确的是()
A)可用S定义结构体变量 B)可以用T定义结构体变量
C)S是struct类型的变量 D)T是struct S类型的变量
40、有以下程序
struc STU{
char name[10];
int num;
};
void f1(struct STU c)
{ struct STU b={“LiSiGuo”,2042};
c=b;
}
void f2(struct STU *c)
{ struct STU b={“SUNDan”,2044};
*c=b;
}
main( )
{ struct STU a={“YangSan”,2041},b={“WangYin”,2043};
f1(a);f2(&b);
printf(“%d %d
”,a.num,b.num);
} 执行后的输出结果是()
A)2041 2044 B)2041 2043 C)2042 2044 D)2042 2043
41、有以下程序
main( )
{ unsigned char a,b;
a=4|3;
b=4&3;
printf(“%d %d
”,a,b(;
} 执行后输出结果是()
A) 7 0 B)0 7 C)1 1 D)43 0
42、下面程序的功能是输出以下形式的金字塔图案是:
*
***
*****
*******
main( )
{ int i,j;
for(i=1;i<=4;i++)
{ for(j=1;j<=4-i;j++) printf(“ “);
for(j=1;j<=_______;j++) printf(“*”);
printf(“
”);
}
} 在下划线处应填入的是()
A)i B)2*i-1 C)2*i+1 D)i+2
43、有以下程序
void sort(int a[],int n)
{ int i,j,t;
for(i=0;i的
for(j=i+2;j的
if(a[i] 的
}
main()
{ int aa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(aa,10);
for(i=0;i<10;i++) printf(“%d”,aa[i]);
printf(“
”);
} 其输出结果是()
A)1,2,3,4,5,6,7,8,9,10, B)10,9,8,7,6,5,4,3,2,1,
C)9,2,7,4,5,6,3,8,1,10, D)1,10,3,8,5,6,7,4,9,2,
在2014年发现原来使用VPS的客户需求慢慢的在改版,VPS已经不能满足客户的需求。我们开始代理机房的独立服务器,主推和HS机房的独立服务器。经过一年多的发展,我们发现代理的服务器配置参差不齐,机房的售后服务也无法完全跟上,导致了很多问题发生,对使用体验带来了很多的不便,很多客户离开了我们。经过我们慎重的考虑和客户的建议。我们在2015开始了重大的改变, 2015年,我们开始计划托管自己...
搬瓦工最近上线了一个新的荷兰机房,荷兰 EUNL_9 机房,这个 9 的编号感觉也挺随性的,之前的荷兰机房编号是 EUNL_3。这次荷兰新机房 EUNL_9 采用联通 AS9929 高端路线,三网都接入了 AS9929,对于联通用户来说是个好消息,又多了一个选择。对于其他用户可能还是 CN2 GIA 机房更合适一些。其实对于联通用户,这个荷兰机房也是比较远的,相比之下日本软银 JPOS_1 机房可...
继阿里云服务商推出轻量服务器后,腾讯云这两年对于轻量服务器的推广力度还是比较大的。实际上对于我们大部分网友用户来说,轻量服务器对于我们网站和一般的业务来说是绝对够用的。反而有些时候轻量服务器的带宽比CVM云服务器够大,配置也够好,更有是价格也便宜,所以对于初期的网站业务来说轻量服务器是够用的。这几天UCLOUD优刻得香港服务器稳定性不佳,于是有网友也在考虑搬迁到腾讯云服务器商家,对于轻量服务器官方...