二级C语言笔试真题及答案.docx

上传人:b****5 文档编号:2795357 上传时间:2022-11-15 格式:DOCX 页数:17 大小:21.68KB
下载 相关 举报
二级C语言笔试真题及答案.docx_第1页
第1页 / 共17页
二级C语言笔试真题及答案.docx_第2页
第2页 / 共17页
二级C语言笔试真题及答案.docx_第3页
第3页 / 共17页
二级C语言笔试真题及答案.docx_第4页
第4页 / 共17页
二级C语言笔试真题及答案.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

二级C语言笔试真题及答案.docx

《二级C语言笔试真题及答案.docx》由会员分享,可在线阅读,更多相关《二级C语言笔试真题及答案.docx(17页珍藏版)》请在冰豆网上搜索。

二级C语言笔试真题及答案.docx

二级C语言笔试真题及答案

2003年4月二级C语言笔试真题及答案

(考试时间120分钟,满分100分)

一、选择题(

(1)~(40)每小题1分,(41)~(55)每小题2分,共60分)

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

(11)以下叙述中正确的是

A)C语言比其他语言高级

B)C语言可以不用编译就能被计算机识别执行

C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式

D)C语言出现的最晚,具有其他语言的一切优点

(12)C语言中用于结构化程序设计的三种基本结构是

A)顺序结构、选择结构、循环结构B)if、switch、break

C)for、while、do-whileD)if、for、continue

(13)在一个C程序中

A)main函数必须出现在所有函数之前B)main函数可以在任何地方出现

C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置

(14)下列叙述中正确的是

A)C语言中既有逻辑类型也有集合类型

B)C语言中没有逻辑类型但有集合类型

C)C语言中有逻辑类型但没有集合类型

D)C语言中既没有逻辑类型也没有集合类型

(15)下列关于C语言用户标识符的叙述中正确的是

用户标识符中可以出现在下划线和中划线(减号)

用户标识符中不可以出现中划线,但可以出现下划线

用户标识符中可以出现下划线,但不可以放在用户标识符的开头

用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头

(16)若有以下程序段(n所赋的是八进制数)

intm=32767,n=032767

printf("%d,%o/n",m,n);

执行后输出结果是

A)32767,32767B)32767,032767

C)32767,77777D)32767,077777

(17)下列关于单目运算符++、--的叙述中正确的是

A)它们的运算对象可以是任何变量和常量

B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量

C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量

D)它们的运算对象可以是char型变量、int型变量和float型变量

(18)若有以下程序段

intm=0xabc,n=0xabc;

m-=n;

printf("%X\n",m);

执行后输出结果是

A)0X0B)0x0C)0D)0XABC

(19)有以下程序段

intm=0,n=0;charc=‘a’;

scanf("%d%c%d",&m,&c,&n);

printf("%d,%c,%d\n",m,c,n);

若从键盘上输入:

10A10<回车>,则输出结果是:

A)10,A,10B)10,a,10C)10,a,0D)10,A,0

(20)有以下程序

main()

{inti;

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

switch(i)

{case1:

printf("%d",i);

case2:

printf("%d",i);

default:

printf("%d",i);

}

}

执行后输出结果是

A)011122B)012C)012020D)120

(21)有以下程序

main()

{inti=1,j=1,k=2;

if((j++‖k++)&&i++)printf("%d,%d,%d\n",i,j,k);

}

执行后输出结果是

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

(22)有以下程序

main()

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

if(a>b>c)

printf("%d\n",d);

elseif((c-1>=d)==1)

printf("%d\n",d+1);

else

printf("%d\n",d+2)

}

执行后输出结果是

A)2B)3C)4D)编译时有错,无结果

(23)有以下程序

main()

{intp[7]={11,13,14,15,16,17,18},i=0,k=0;

while(i<7&&p[i]%2){k=k+p[i];i++;}

printf("%d\n",k);

}

执行后输出结果是

A)58B)56C)45D)24

(24)有以下程序

main()

{inti=0,s=0;

do{

if(i%2){i++;continue;}

i++;

s+=i;

}while(i<7);

printf("%d\n",s);

}

执行后输出结果是

A)16B)12C)28D)21

(25)有以下程序

main()

{inti=10,j=1;

printf("%d,%d\n",i--,++j);

}

执行后输出结果是

A)9,2B)10,2C)9,1D)10,1

(26)有以下程序

main()

{chara,b,c,*d;

a=’\’;b=‘\xbc’;

c=‘\0xab’;d="\017";

print("%c%c%c\n",a,b,c,*d);

}

编译时出现错误,以下叙述中正确的是

A)程序中只有a=’\’;语句不正确B)b=‘\xbc’;语句不正确

C)d="\0127";语句不正确D)a=’\’;和c=‘\0xab’;语句都不正确

(27)有以下程序

intfl(intx,inty)

{returnx>y?

x:

y;}

intf2(intx,inty)

{returnx>y?

y:

x;}

main()

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

d=f1(a,b);d=f1(d,c);

e=f2(a,b);e=f2(e,c);

f=a+b+c-d-e;

printf("%d,%d,%d\n",d,f,e);

}

执行后输出结果是

A)3,4,5B)5,3,4C)5,4,3D)3,5,4

(28)有如下程序

voidf(intx,inty)

{intt;

if(x

}

main()

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

f(a,b);f(a,c);f(b,c);

printf("%d,%d,%d\n",a,b,c);

}

执行后输出结果是

A)3,4,5B)5,3,4C)5,4,3D)4,3,5

(29)若有以下定义和语句

#include

inta=4,b=3,*p,*q,*w;

p=&a;q=&b;w=q;q=NULL;

则以下选项中错误的语句是

A)*q=0;B)w=p;C)*p=a;D)*p=*w;

(30)有以下程序

int*f(int*x,int*y)

{if(*x<*y)

returnx;

else

returny;

}

main()

{inta=7,b=8,*p,*q,*r};

}

执行后输出结果是

A)7,8,8B)7,8,7C)8,7,7D)8,7,8

(31)有以下程序

main()

{char*s[]={"one","two","three"},*p;

p=s[1];

printf("%c,%s\n",*(p+1),s[0]);

}

执行后输出结果是

A)n,twoB)t,oneC)w,oneD)o,two

(32)有以下程序

main()

{intx[8]={8,7,6,5,0,0},*s;

s=x+3

printf("%d\n",s[2]);

}

执行后输出结果是

A)随机值B)0C)5D)6

(33)以下能正确定义数组并正确赋初值的语句是

A)intN=5,b[N][N];B)inta[1][2]={{1},{3}};

C)intc[2][]={{1,2},{3,4}};D)intd[3][2]={{1,2},{34}};

(34)有以下程序

main()

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

inti,j,k=2;

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

{printf("%d",m[k][i]);}

}

执行后输出结果是

A)456B)258C)369D)789

(35)以下函数的功能是:

通过键盘输入数据,为数组中的所有元素赋值。

#defineN10

voidarrin(intx[N])

{inti=0;

while(i

scanf("%d",);

}

在下划线处应填入的是

A)x+iB)&x[i+1]C)x+(i++)D)&x[++i]

(36)有以下程序

main()

{chars[]="\n123\\";

printf("%d,%d\n",strlen(s),sizeof(s));

}

执行后输出结果是

A)赋初值的字符串有错B)6,7C)5,6D)6,6

(37)阅读以下函数

fun(char*s1,char*s2)

{inti=0;

while(s1[i]==s2[i]&&s2[i]!

=‘\0’)i++;

return(s1[i]==&&s2{i}!

==‘\0’);

}

此函数的功能是

A)将s2所指字符串赋给s1

B)比较s1和s2所指字符串的大小,若s1比s2的大,函数值为1,否则函数值为0

C)比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0

D)比较s1和s2所指字符串的长度,若s1比s2的长,函数值为1,否则函数值为0

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

A)全局变量的作用域一定比局部变量的作用域范围大

B)静态(static)类别变量的生存期贯穿于整个程序的运行期间

C)函数的形参都属于全局变量

D)未在定义语句中赋初值的auto变量和static变量的初值都是随机值

(39)设有如下说明

typedefstruct

{intn;charc;doublex;}STD;

则以下选项中,能正确定义结构体数组并赋初值的语句是

A)STDtt[2]={{1,'A',62},{2,'B',75}};

B)STDtt[2]={1,"A",62},2,"B",75};

C)structtt[2]={{1,'A'},{2,'B'}};

D)structtt[2]={{1,"A",62.5},{2,"B",75.0}};

(40)有以下程序

main()

{union{unsignedintn;

unsignedcharc;

}u1;

ul.c=`A`;

printf("%c\n",u1.n);

}

执行后输

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

当前位置:首页 > 工程科技 > 能源化工

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

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