C语言程序设计题库081225全.docx

上传人:b****8 文档编号:9677803 上传时间:2023-02-05 格式:DOCX 页数:102 大小:60.86KB
下载 相关 举报
C语言程序设计题库081225全.docx_第1页
第1页 / 共102页
C语言程序设计题库081225全.docx_第2页
第2页 / 共102页
C语言程序设计题库081225全.docx_第3页
第3页 / 共102页
C语言程序设计题库081225全.docx_第4页
第4页 / 共102页
C语言程序设计题库081225全.docx_第5页
第5页 / 共102页
点击查看更多>>
下载资源
资源描述

C语言程序设计题库081225全.docx

《C语言程序设计题库081225全.docx》由会员分享,可在线阅读,更多相关《C语言程序设计题库081225全.docx(102页珍藏版)》请在冰豆网上搜索。

C语言程序设计题库081225全.docx

C语言程序设计题库081225全

2000年9月全国计算机等级考试二级c笔试试卷

一、选择题(

(1)--(40)每小题1分,(41)--(50)每小题2分,共60分

下列各题a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项在答题卡相应位置上涂黑,答在试卷上不得分。

(1)下列电子邮件地址中正确的是(其中□表示空格)

a)malin&b)malin@

c)lin□ma&d)lin□ma@

(2)下列说法中正确的是

a)为了使用novell网提供的服务,必须采用ftp协议

b)为了使用internet网提供的服务,必须采用telnet协议

c)为了使用novell网提供的服务,必须采用tcp/ip协议

d)为了使用internet网提供的服务,必须采用tcp/ip协议

(3)下列说法中不正确的是

a)调制解调器(modem)是局域网络设备

b)集线器(hub)是局域网络设备

c)网卡(nic)是局域网络设备

d)中继器(repeater)是局域网络设备

(4)十进制数397的十六进制值为

a)18db)18ec)277d)361

(5)下列说法中不正确的是

a)cd-rom是一种只读存储器但不是内存储器

b)cd-rom驱动器是多媒体计算机的基本部分

c)只有存放在cd-rom盘上的数据才称为多媒体信息

d)cd-rom盘上最多能够存储大约650兆字节的信息(6)windows应用环境中鼠标的拖动操作不能完成的是

a)当窗口不是最大时,可以移动窗口的位置

b)当窗口最大时,可以将窗口缩小成图标

c)当窗口有滚动条时可以实现窗口内容的滚动

d)可以将一个文件移动(或复制)到另一个目录中去

(7)从windows中启动ms-dos方式进入了dos状态,如果想回到windos状态,在dos提示符下,应键入的命令为

a)exitb)quitc)wind)dos-u

(8)要在windows标准窗口的下拉菜单中选择命令,下列操作错误的是

a)用鼠标单击该命令选项

b)用键盘上的上下方向键将高亮度条移至该命令选项后再按回车键

c)同时按下alt键与该命令选项后括号中带有下划线的字母键

d)直接按该命令选项后面括号中带有下划线的字母键

(9)ascll码(含扩展)可以用一个字节表示,则可以表示的ascll码值个数为

a)1024b)256c)128d)8o

(10)字长为32位的计算机是指

a)该计算机能够处理的最大数不超过232

b)该计算机中的cpu可以同时处理32位的二进制信息

c)该计算机的内存量为32mb

d)该计算机每秒钟所能执行的指令条数为32mips

(11)在dos系统中,下列文件名中非法的是

a)abcdefg1b)abcdefg1.234c)abcd_efgd)abcd\efg

(12)dos系统启动后,下列文件中驻留内存的是

a)config.sysb)c)autoexec.batd)mem.exe

(13)dos下的“dir*2”命令将列出当前目录下的

a)所有名字末尾为字符2的非隐含文件和目录

b)所有名字末尾为字符2的非隐含文件

c)所有非隐含文件

d)所有非隐含文件和目录

(14)软驱的盘符为a,a盘上只有一个目录\xyz,而\xyz下有若干子目录和文件,若想把a盘的所有内容复制到c盘根目录下,应使用的命令为

a)copya:

\*.*c:

b)copya:

\*.*c:

\*.*

c)xcopya:

\*.*c:

\/sd)diskcopya:

c:

(15)若要将当前盘目录下的文件a.txt连接在文件b.txt后面,应使用的命令为

a)copya.txt>>b.txtb)movea.txt>>b.txt

c)patha.txt>>b.txtd)typea.txt>>b.txt

(16)若变量已正确定义并赋值,下面符合c语言语法的表达式是

a)a:

=b+1b)a=b=c+2c)int18.5%3d)a=a+7=c+b

(17)c语言中运算对象必须是整型的运算符是

a)%=b)/c)=d)<=

(18)若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是

a)1b)2c)2.0d)2.5

(19)若变量a、ii已正确定义,且i已正确赋值,合法的语句是

a)a==1b)++i;c)a=a++=5;d)a=int(i);

(20)若有以下程序段,

intc1=1,c2=2,c3;

c3=1.0/c2*c1;

则执行后,c3中的值是

a)0b)0.5c)1d)2

(21)有如下程序

main0

{inty=3,x=3,z=1;

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

}

运行该程序的输出结果是

a)34b)42c)43d)33

(22)能正确表示逻辑关系:

“a≥=10或a≤0”的c语言表达式是

a)a>=10ora<=0b)a>=0|a<=10c)a>=10&&a<=0d)a>=10‖a<=0

(23)有如下程序

main0

{intx=1,a=0,b=0;

switch(x){

case0:

b++;

case1:

a++

case2:

a++;b++

}

printf(“a=%d,b=%d\n”,a,b);

}

该程序的输出结果是

a)a=2,b=1b)a=1,b=1c)a=1,b=0d)a=2,b=2

(24)有如下程序

main0

{floatx=2.0,y;

if(x<0.0)y=0.0;

elseif(x<10.0)y=1.0/x;

elsey=1.0;

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

}

该程序的输出结果是

a)0.000000b)0.250000c)0.500000d)1.000000

(25)有如下程序

main0

{inta=2,b=-1,c=2;

if(aif(b<0)c=0;

elsec++

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

}

该程序的输出结果是

a)0b)1c)2d)3

(26)有如下程序

main0

{inti,sum;

for(i=1;i<=3;sum++)sum+=i;

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

}

该程序的执行结果是

a)6b)3c)死循环d)0

(27)有如下程序

main0

{intx=23;

do

{printf(“%d”,x--);}

while(!

x);

}

该程序的执行结果是

a)321b)23c)不输出任何内容d)陷入死循环

(28)有如下程序

main0

{intn=9;

while(n>6){n--;printf(“%d”,n);}

}

该程序段的输出结果是

a)987b)876c)8765d)9876

(29)设有说明语句:

chara='\72';则变量a

a)包含1个字符b)包含2个字符c)包含3个字符d)说明不合法

(30)有如下函数调用语句

func(rec1,rec2+rec3,(rec4,rec5);

该函数调用语句中,含有的实参个数是

a)3b)4c)5d)有语法错

(31)有如下程序

intrunc(inta,intb)

{return(a+b);}

main0

{intx=2,y=5,z=8,r;

r=func(func(x,y),z);

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

}

该程序的输出的结果是

a)12b)13c)14d)15

(32)有如下程序段

int*p,a=10,b=1

p=&a;a=*p+b;

执行该程序段后,a的值为

a)12b)11c)10d)编译出错

(33)对于基类型相同的两个指针变量之间,不能进行的运算是

a)

(34)以下函数返回a所指数组中最小的值所在的下标值

fun(int*a,intn)

{inti,j=0,p;

p=j;

for(i=j;iif(a[i]return(p);

}

在下划线处应填入的是

a)i=pb)a[p]=a[i]c)p=jd)p=i

(35)有如下程序

longfib(intn)

{if(n>2)return(fib(n-1)+fib(n-2));

elsereturn

(2);

}

main0

{printf(“%d\n”,fib(3));

该程序的输出结果是

a)2b)4c)6d)8

(36)在c语言中,函数的隐含存储类别是

a)autob)staticc)externd)无存储类别

(37)有如下程序

#definen2

#definemn+1

#definenum2*m+1

#main()

{inti;

for(i=1;i<=num;i++)printf(“%d\n”,i);

}

该程序中的for循环执行的次数是

a)5b)6c)7d)8

(38)有以下函数

charfun(char*p)

{returnp;}

该函数的返回值是

a)无确切的值b)形参p中存放的地址值

b)一个临时存储单元的地址d)形参p自身的地址值

(39)有如下程序段

inta=14,b=15,x;

charc='a';

x=(a&&b)&&(c<'b');

执行该程序段后,x的值为

a)tureb)falsec)0d)1

(40)若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是

a)eofb)0c)非零值d)null

(41)若有以下说明和定义

fun(int*c){}

main()

{int(*a)()=fun,*b(),w[10],c;

}

在必要的赋值之后,对fun函数的正确调用语句是

a)a=a(w);b)(*a)(&c);c)b=*b(w);d)fun(b);

(42)有如下说明

inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;

则数值为9的表达式是

a)*p+9b)*(p+8)c)*p+=9d)p+8

(43)有如下程序

main0

{intn[5]={0,0,0},i,k=2;

for(i=0;iprintf(“%d\n”,n[k]);

}

该程序的输出结果是

a)不确定的值b)2c)1d)0

(44)若有以下的定义:

intt[3][2];能正确表示t数组元素地址的表达式是

a)&t[3][2]b)t[3]c)t[1]d)t[2]

(45)有如下程序

main0

{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

for(i=1;i<3;i++)

for(j=0;jprintf(“%d\n”,s);

}

该程序的输出结果是

a)18b)19c)20d)21

(46)有如下定义

structperson{charname[9];intage;};

strictpersonclass[10]={“johu”,17,

“paul”,19

“mary”,18,

“adam16,};

根据上述定义,能输出字母m的语句是

a)prinft(“%c\n”,class[3].mane);

b)pfintf(“%c\n”,class[3].name[1]);

c)prinft(“%c\n”,class[2].name[1]);

d)printf(“%^c\n”,class[2].name[0]);

(47)以下对结构体类型变量的定义中,不正确的是

a)typedefstructaab)#defineaastructaa

{intn;aa{intn;

floatm;floatm;

}aa;}td1;

aatd1;

c)structd)struct

{intn;{intn;

floatm;floatm;

}aa;}td1;

stuctaatd1;

(48)若已建立如下图所示的单向链表结构,

在该链表结构中,指针p、s分别指向图中所示结点,则不能将s所指的结点插入到链表末尾仍构成单向链表的语句组是

a)p=p->next;s->next=p;p->next=s;

b)p=p->next;s->next=p->next;p->next=s;

c)s->next=null;p=p->next;p->next=s;

d)p=(*p).next;(*s).next=(*p).next;(*p).next=s;

(49)有如下程序

main()

{chars[]=”abcd”,*p;

for(p=s+l;p}

该程序的输出结果是

a)abcdb)ac)bd)bcd

bcdbccd

cdcdd

dd

(50)有如下程序

main()

{charch[2][5]={“6937”,”8254”},*p[2];

inti,j,s=0;

for(i=0;i<2;i++)p[i]=ch[i];

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

for(j=0;p[i][j]>'\0';j+=2)

s=10*s+p[i][j]-‘0';

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

}

该程序的输出结果是

a)69825b)63825c)6385d)693825

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

请将每空的正确答案写在答题卡上[1]至[20]序号的横线上,答在试卷上不得分。

(1)在dos状态下,当执行当前盘目录中的程序a.exe时,为了将本该在屏幕上显示的运行结果输出到文件a.dat中,应使用的dos命令为[1]。

(2)在xcopy、path、tree三个dos命令中,属于内部命令的是令是[2]。

(3)设当前盘为c盘,为了将当前盘当前目录中第三个字符为x的所有文件同名复制到a盘的当前目录中,应使用的dos命令为[3]。

(4)要将当前盘的目录a\b\c设置为当前目录,应使用的dos命令为[4]。

(5)计算机网络按通信距离划分为局域网与广域网,novell网属于[5]。

(6)以下程序的输出结果是[6]。

main()

{unsignedshorta=65536;intb;

printf(“%d\n”,b=a);

}

(7)若有定义:

inta=10,b=9,c=8;接着顺序执行下列语句后,变量b中的值是[7]。

c=(a-=(b-5));

c=(a%11)+(b=3);

(8)表示“整数x的绝对值大于5”时值为“真”的c语言表达式是[8]。

(9)要使以下程序段输出10个整数,请填入一个整数。

for(i=0;i<=[9];printf(“%d\n”,i+=2));

(10)函数pi的功能是根据以下近似公式求π值:

(π*π)/6=1+1/(2*2)+1/(3*3)+..+1/(n*n)

现在请你在下面的函数中填空,完成求π的功能。

#include“math.h”

doublepi(longn)

{doubles=0.0;longi;

for(i=1;i<=n;i++)s=s+[10];

return(sqrt(6*s));

}

(11)若输入字符串:

abcde<回车>,则以下while循环体将执行[11]次。

while((ch=getchar())=='e')printf(“*”);

(12)以下函数用来求出两整数之和,并通过形参将结果传回,请填空。

voidfunc(intx,inty,[12]z)

{*z=x+y;}

(13)若有以下定义,则不移动指针p,且通过指针p引用值为98的数组元素的表达式是[13]。

intw[10]={23,54,10,33,47,98,72,80,61},*p=w;

(14)设在主函数中有以下定义和函数调用语句,且fun函数为void类型;请写出fun函数的首部[14]。

要求形参名为b。

main()

{doubles[10][22];

intn;┆

fun(s);

}

(15)以下程序的输出结果是[15]。

voidfun()

{staticinta=0;

a+=2;printf(“%d”,a);

}

main()

{intcc;

for(cc=1;cc<4;cc++)fun()

printf(“\n”);

}

(16)以下程序的输出结果是[16]。

#definemax(x,y)(x)>(y)?

(x):

(y)

main()

{inta=5,b=2,c=3,d=3,t;

t=max(a+b,c+d)*10;

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

}

(17)若要使指针p指向一个double类型的动态存储单元,请填空。

p=[17]malloc(sizeof(double));

(18)设有以下结构类型说明和变量定义,则变量a在内存所占字节数是[18]。

structstud

{charnum[6];

ints[4];

doubleave;

}a,*p;

(19)以下函数把b字符串连接到a字符串的后面,并返回a中新字符串的长度。

请填空。

strcen(chara[],charb[])

{intnum=0,n=0;

while(*(a+num)!

=[19])num++;

while(b[n]){*(a+num)=b[n];num++;[20];}

return(num);

}

2000年9月试题

参考答案:

一、选择题:

(1)b

(2)d(3)a(4)a(5)c(6)b(7)a(8)c(9)b(10)b

(11)d(12)b(13)d(14)c(15)d(16)b(17)a(18)c(19)b(20)a

(21)d(22)d(23)a(24)c(25)c(26)c(27)b(28)b(29)a(30)a

(31)d(32)b(33)c(34)d(35)b(36)c(37)b(38)b(39)d(40)c

(41)b(42)b(43)d(44)d(45)a(46)d(47)c(48)a(49)d(50)c

二、填空题:

[1]a.exe>a.dat或a>>a.dat

[2]path

[3]copy?

?

x*.*a:

[4]cda\b\c

[5]局域网

[6]0

[7]3

[8]x>5||x<-5

[9]18

[10]1.0/(i*i)

[11]0

[12]int*

[13]p[5]或*(p+5)

[14]voidfun(doubleb[][22])

或voidfun(doubleb[0][22])

或voidfun(double(*b)[22])

[15]246

[16]7

[17](double*)

[18]22

[19]'\0'或0

[20]n++或n+=1或n=n+1

2001年9月

一、选择题(

(1)-(40)题每题1分,(41)-(50)题每题2分,共60分)

下列各题a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(l)在计算机系统中,一个字节的二进制位数为

a)16b)8c)4d)由cpu的型号决定

(2)存储16×16点阵的一个汉字信息,需要的字节数为

a)32b)64c)128d)256

(3)英文大写字母b的ascii码为42h,英文小写字母b的ascii码为

a)43hb)84hc)74hd)62h

(4)下列计算机语言中,cpu能直接识别的是

a)自然语言b)高级语言c)汇编语言d)机器语言

(5)在计算机领域中,所谓"裸机"是指

a)单片机b)单板机

c)不安装任何软件的计算机d)只安装操作系统的计算机

(6)下列带有通配符的文件名中,能代表文件abcdef.dat的是

a)a*.*b)?

f.*c)*.?

d)ab?

.*

(7)下列dos命令中,执行时不会发生错误的是

a)type*.txtb)dir*.txt

c)reneast.txta:

b.txtd)copy*.txt>con

(8)设当前盘为c盘,c盘的当前目录为\a\b\c。

下列dos命令中能正确执行的是

a)md\b)mda:

\c)md\a\bd)cdc:

(9)为了将c:

user中的文件file.txt同名复制到a盘根目录下,下列dos命令中能正确执行的是

a)typec:

\user\file.txt>a:

\file.txt

b)typec:

\user\file.txta:

\file.txt

c)copyc:

\user\file.txt>a:

\file.txt

d)copyc:

\user\file.txt

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

当前位置:首页 > 党团工作 > 思想汇报心得体会

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

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