全国计算机等级考试二级C语言笔试模拟题文档格式.docx

上传人:b****1 文档编号:1086481 上传时间:2023-04-30 格式:DOCX 页数:19 大小:23.25KB
下载 相关 举报
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第1页
第1页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第2页
第2页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第3页
第3页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第4页
第4页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第5页
第5页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第6页
第6页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第7页
第7页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第8页
第8页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第9页
第9页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第10页
第10页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第11页
第11页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第12页
第12页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第13页
第13页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第14页
第14页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第15页
第15页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第16页
第16页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第17页
第17页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第18页
第18页 / 共19页
全国计算机等级考试二级C语言笔试模拟题文档格式.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

全国计算机等级考试二级C语言笔试模拟题文档格式.docx

《全国计算机等级考试二级C语言笔试模拟题文档格式.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级C语言笔试模拟题文档格式.docx(19页珍藏版)》请在冰点文库上搜索。

全国计算机等级考试二级C语言笔试模拟题文档格式.docx

(14)请选出可用作C语言用户标识符的是

A)void,define,WORDB)a3_b3,_123,IFC)FOR,--abc,CaseD)2a,Do,Sizeof

(15)下列各数据类型不属于构造类型的是

A)枚举型B)共用型C)结构型D)数组型

(16)在16位C编译系统上,若定义longa;

则能给a赋40000的正确语句是

A)a=20000+20000;

B)a=4000*10;

C)a=30000+10000;

D)a=4000L*10L

【参考答案】D

(17)以下不正确的叙述是

A)在C程序中,逗号运算符的优先级最低

B)在C程序中,APH和aph是两个不同的变量

C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变

D)从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值

(18)sizeof(float)是

A)一个双精度表达式B)一个整型表达式C)一种函数调用D)一个不合法的表达

(19)若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为

A)4B)16C)32D)52

(20)下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请

选择填空。

#include<

stdio.h>

main()

{inti=0,j,k;

do{i++;

k=316-13*i;

}while();

j=k/11;

printf("

316=13*%d+11*%d"

i,j);

}

A)k/11B)k%11C)k/11==0D)k%11==0

(21)设有定义:

intn=0,*p=&

n,**q=&

p,则下列选项中正确的赋值语句是

A)p=1;

B)*q=2;

C)q=p;

D)*p=5;

(22)下面程序的运行结果是

main()

{inty=10;

do{y--;

}while(--y);

printf("

%d、n"

y--);

A)-1B)1C)8D)0【参考答案】D

23)下面程序的输出结果是

main()

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

*(p+2));

A)3B)4C)1D)2

(24)有如下程序

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

int*p=&

a[3],b;

b=p[5];

则b的值是

A)5B)6C)9D)8

(25)设有intx=11;

则表达式(x++*1/3)的值是

A)3B)4C)11D)12【参考答案】A

26)请选出以下语句的输出结果

strlen("

、t、"

、065\xff、n"

));

A)5B)14C)8D)输出项不合法,无正常输出【参考答案】A

(27)下列程序的输出结果是

{doubled=3.2;

intx,y;

x=1.2;

y=(x+3.8)/5.0;

d*y);

A)3B)3.2C)0D)3.07【参考答案】C

(28)下列程序的输出结果是

intb=2;

intfunc(int*a)

{b+=*a;

return(b);

}main()

{inta=2,res=2;

res+=func(&

a);

printf("

%d、n”,res);

A)4B)6C)8D)10

参考答案】B

29)下面能正确进行字符串赋值操作的是

A)chars[5]={"

ABCDE"

};

B)chars:

5:

={'

A,'

B'

'

C,'

D,'

E};

C)char*s;

s="

;

D)char*s;

chara;

scanf("

%s"

&

s);

(30)执行以下程序后,a,b的值分别为

{inta,b,k=4,m=6,*p1=&

k,*p2=&

m;

a=p1==&

b=(*p1)/(*p2)+7;

a=%d、n"

a);

b=%d、n"

b);

A)-1,5B)1,6C)0,7D)4,10

31)设有数组定义:

chararray[]="

China"

则数组array所占的空间为

A)4个字节B)5个字节C)6个字节D)7个字节

(32)若已定义:

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

其中Owiw9则对a数组元素不正确的引用是

A)a[p-a]B)*(&

a[i])

C)p[i]D)a[1O]

(33)以下不正确的定义语句是

A)doublex[5]={2.O,4.O,6.O,8.O,1O.O};

B)inty[5]={O,1,3,5,7,9};

C)charcl:

]={'

1'

,‘2'

,‘3'

,‘4'

,‘5'

};

D)charc2□={\x10'

、'

xa'

\'

x8'

(34)若有以下程序

inta[]={2,4,6,8};

{inti;

int*p=a;

for(i=0;

i<

4;

i++)a[i]=*p;

a:

2]);

上面程序输出结果是

A)6B)8C)4D)2

35)下面程序段的运行结果是

char*format="

%s,a=%d,b=%d\n"

inta=11,b=10;

a+=b;

printf(format,"

a+=b"

a,b);

A)for,"

abB)format,"

C)a+=b,a=21,b=10D)以上结果都不对

(36)C语言允许函数类型缺省定义,此时函数值隐含的类型是

A)floatB)intC)longD)double

(37)以下程序有语法错误,有关错误原因的正确说法是

{intG=5,k;

voidprt_char()

k=prt_char(G)

A)

void说明

语句voidprt_char();

有错,它是函数调用语句,不能用

B)变量名不能使用大写字母

C)函数说明和函数调用语句之间有矛盾

D)函数名不能使用下划线

38)以下叙述中不正确的是

A)在不同的函数中可以使用相同的名字的变量

B)函数中的形式参数是局部变量

C)在一个函数内定义的变量只在本函数范围内有效

D)在一个函数内的复合语句中定义的变量在本函数范围内有效【参考答案】D

(39)有以下程序:

unionpw

charch[2];

}a;

{a.ch[0]=13;

a.ch[1]=0;

a.i);

程序的输出结果是

A)13B)14C)208D)209【参考答案】A

(40)在16位IBM-PC机上使用C语言,若有如下定义

structdata

charch;

doublef;

}b;

则结构变量b占用内存的字节数是

A)1B)2C)7D)11【参考答案】D

(41)下面程序的运行结果是

{inta=1,b=10;

do

{b-=a;

a++;

}while(b--<

0);

a=%d,b=%d、n"

a,b);

A)a=3,b=11B)a=2,b=8C)a=1,b=-1D)a=4,b=9【参考答案】B

42)以下程序的输出结果是

voidreverse(inta[],intn)

{inti,t;

n/2;

i++)

{t=a[i];

a[i]=a[n-1-i];

a[n-1-i]=t;

{intb[10]={1,2,3,4,5,6,7,8,9,10};

inti,s=0;

reverse(b,8);

for(i=6;

10;

i++)s+=b[i];

%d、n”,s);

A)22B)10C)34D)30

参考答案】A

(43)有如下程序:

longfib(intn)

{if(n>

2)return(fib(n-1)+fib(n-2));

elsereturn

(2);

{printf("

fib(3));

该程序的输出结果是

A)2B)4C)6D)8

(44)假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件

所在目录的DOS提示符下键入:

PROGABCDEFGHIJKL<

回车>

,则输出结果为

main(intargc,char*argv[])

{while(--argc>

0)

printf("

%s"

argv[argc]);

、n"

);

A)ABCDEFGB)IJHLC)ABCDEFGHIJKLD)IJKLABCDEFGH

(45)以下程序有错,错误原因是

{int*p,i;

char*q,ch;

p=&

i;

q=&

ch;

*p=40;

*p=*q;

A)p和q的类型不一致,不能执行*p=*q;

语句

B)*p中存放的是地址值,因此不能执行*p=40;

语句

C)q没有指向具体的存储单元,所以*q没有实际意义

没有意

D)q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行义,可能会影响后面语句的执行结果

(46)函数rewind的作用是

A)使文件位置指针重新返回文件的开始位置

B)将文件位置指针指向文件中所要求的特定位置

C)使文件位置指针指向文件的末尾

D)使文件位置指针自动移至下一个字符位置

(47)设有以下说明语句

structex

{intx;

floaty;

charz;

}example;

则下面的叙述中不正确的是

A)struct结构体类型的关键字

B)example是结构体类型名

C)x,y,z都是结构体成员名

D)structex是结构体类型名

(48)设有以下语句:

charx=3,y=6,z;

z=xAy<

<

2;

则z的二进制值是

A)B)C)D)

49)阅读以下程序及对程序功能的描述,其中正确的描述是

{

FILE*in,*out;

charch,infile[10],outfile[10];

Entertheinfilename:

\n"

scanf("

infile);

Entertheoutfilename:

\n"

);

outfile);

if((in=fopen(infile,"

r"

))==NULL)

printf("

cannotopeninfile\n"

exit(0);

if((out=fopen(outfile,"

w"

cannotopenoutfile\n"

while(!

feof(in))fputc(fgetc(in),out);

fclose(in);

fclose(out);

A)程序完成将磁盘文件的信息在屏幕上显示的功能

B)程序完成将两个磁盘文件合二为一的功能

C)程序完成将一个磁盘文件复制到另一个磁盘文件中

D)程序完成将两个磁盘文件合并并在屏幕上输出

50)C语言中,能识别处理的文件为

C)流文件和文本文件D)数据文件和二进制文件

二、填空题

(1)数据的逻辑结构有线性结构和【1】两大类。

【参考答案】

【1】非线性结构

(2)顺序存储方法是把逻辑上相邻的结点存储在物理位置【2】的存储单元中。

【2】相邻

(3)一个类可以从直接或间接的祖先中继承所有属性和方法。

采用这个方法提高了软件的【3】。

【3】可重用性

(4)软件工程研究的内容主要包括:

【4】技术和软件工程管理。

【4】软件开发

(5)关系操作的特点是【5】操作。

【5】集合

(6)下面程序是指从终端读入的20个字符放入字符数组中,然后利用指针变量输出上

述字符串,请填空。

chars[21],*p;

for(i=0;

i<

20;

i++)

s[i]=getchar();

s[i]=【6】;

p=【7】

while(*p)putchar(【8】);

参考答案】

【6】\O'

【7】s【8】*p++

(7)以下程序将数组a的4个元素和数组b的6个元素写到名为lett.dat的二进制文件中,请填空。

{FILE*fp;

chara[4]="

1234"

,b[6]="

abcedf"

if((fp=fopen("

【9】"

"

wb"

))=NULL)exit(O);

fwrite(a,sizeof(char),4,fp);

fwrite(b,【1O】,1,fp);

fclose(fp);

【9】lett.dat【1O】6*sizeof(char)

(8)在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为4;

一个double型数据在内存中所占的字节数为【11】。

【11】8

(9)以下程序输出的结果是【12】。

{inta=5,b=4,c=3,d;

d=(a>

b>

c);

d);

【12】O

(10)以下函数的功能是求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp

所指的数组中,这些除数的个数通过形参n返回。

例如,若x中的值为30,则有4个数符合要求,它们是1,3,5,15。

请按题意,完成填空。

试题程序:

conio.h>

voidfun(intx,intpp[],int*n)

{inti,j=0;

【13】

if(x%i==0)pp[j++]=i;

【14】;

{intx,aa[1000],n,i;

clrscr();

\nPleaseenteranintegernumber:

\n”);

seanf("

%d"

&

x)fun(x,aa,&

n);

n;

i++)

aa[i]);

\n"

);

【13】for(i=1;

x;

i+=2)【14】*n=j

(11)#inelude<

eonio.h>

#inelude<

intfun(int*s,intt,int*k)

{inti;

*k=0;

【15】

if(s[*k]<

s[i])*k=i;

return【16】;

inta[10]={876,675,896,101,

301,401,980,431,451,777},k;

fun(a,10,&

k);

printf(”%d,%d、n"

k,a:

k]);

【15】for(i=0;

t;

i++)【16】0

12)mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。

请填空。

intmystrlen(char*str)

for(i=0;

【17】!

=\O'

;

i++;

return(i);

【17】*(str+i)或str[i]

(13)以下程序的输出结果为【18】。

#defineJFT(x)x*x

{inta,k=3;

a=++JFT(k+1);

%d"

a);

18】9

(14)以下定义的结构体类型拟包含两个成员,其中成员变量info用来存入整形数据;

成员变

量link是指向自身结构体的指针,请将定义补充完整。

structnode

{intinfo;

【19】link;

【19】structnode*

(15)设有以下结构体类型:

structst

{charname[8];

intnum;

floats[4];

}student[50];

并且结构体数组student中的元素都已有值,若要将这些元素写到硬盘文件fp中,请将以下fwrite语句补充完整:

fwrite(student,【20】,1,fp);

20】sizeof(structst)*50

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2