首页 > 全部 > 二级C语言 > 国家二级C语言(选择结构、循环结构)机试模拟试卷1

国家二级C语言(选择结构、循环结构)机试模拟试卷1

本单篇文档共11846字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 章节练习 824人下载
价格: 2.00 原价:¥9.00
收藏

国家二级C语言(选择结构、循环结构)机试模拟试卷1

选择题

1.下列选项中,当x为大于1的奇数时,值为0的表达式是( )。(A)

A. x%2==0

B. x/2

C. x%2!=0

D. x%2==1

解析:算术运算符的优先级高于关系运算符的优先级,所以当x为大于1的奇数时,A选项的值为假,即0。B选项的值为不定值,但绝对不是O。C选项的值为真,即1。D选项的值为真,即1。

2.若a是数值类型,则逻辑表达式(a==1)‖(a!=1)的值是( )。(A)

A. 1

B. 0

C. 2

D. 不知道a的值,不能确定

解析:逻辑或“‖”要求只要两边的运算对象有一个非零,结果就为真。虽然不知道a的值,但是若a为l,则左边运算对象为1;若a的值不是l,则右边运算对象的值为1,所以总能保证一边非零。

3.当变量e的值不为2、4、6时,值为“真”的表达式是( )。(D)

A. (c>=2&&e<=6)&&(c%2 1=1)

B. (c==2)‖(c==4)‖(c==6)

C. (c>=2&&c<=6)&&!(c%2)

D. (c>=2&&c←6)‖(c!=3)lI(c!=5)

解析:逻辑或运算符中只要有一个运算量为真,结果就是真,当c>=2&&c<=6条件不成立时,c的值肯定不是2、3、4、5、6,所以c!:3与c!:5均成立,所以D选项的结果一定为真。

4.有以下程序:

#include

main()

{

int a=1,b=2,c=3,d=0;

if(a==1&&b++==2)

if(b!=2‖c一!=3)

prinff(“%d,%d,%d\n”,a,b,c);

else prinff(“%d,%d,%d\n”,a,b,c);

else prinff(“%d,%d,%d\n”,a,b,c);

}

程序的运行结果是( )。(B)

A. 1,3,2

B. 1,3,3

C. 1,2,3

D. 3,2.1

解析:else总是和最近的if配对,所以进入第一个if语句中进行条件判断时,因为是逻辑与操作,需要两边运算对象的值均为非零值才为真,所以需要逐个执行判断的结果为1,不再执行第二个case语句中的操作。进入第二个if语句条件判断,因为b!=2条件成立,所以整个条件表达式的值为真,不再执行逻辑或的第二个运算对象(c一!=3)c的值不变,也不再执行第一个else语句。打印a的值1,b的值3,c的值3。

5.下列关于逻辑运算符两侧运算对象的叙述中正确的是( )。(A)

A. 可以是任意合法的表达式

B. 只能是整数0或非0整数

C. 可以是结构体类型的数据

D. 只能是整数0或1

解析:C语言的逻辑运算符比较特别,它的操作数没有明确的数据类型,可以是任意合法的表达式,所以选择A。

6.设有宏定义:#define IsDIV(k,n)((k%n==1)?1:0),且变量m已正确定义并赋值,则宏调用:Is.DIV(m,5)&&IsDIV(m,7)为真时所要表达的是( )。(B)

A. 判断m是否能被5和7整除

B. 判断m被5和7整除是否都余1

C. 判断m被5或者7整除是否余1

D. 判断m是否能被5或者7整除

解析:本题考查逻辑运算符的相关概念。逻辑与若要为真,那么两边都要为真,所以需要m能被5和7整除都余1,所以选项B正确。

7.if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是( )。(D)

A. 必须是逻辑值

B. 必须是整数值

C. 必须是正数

D. 可以是任意合法的数值

解析:if语句中的表达式可以是任意合法的数值,如常量、变量表达式,所以D选项正确。

8.下列条件语句中,输出结果与其他语句不同的是( )。(C)

A. if(a!=0)printf(“%d\n”,x);else prinff(“%d\n”,y);R)if f a==0)prinff(“%d\n”,y);else printf(“%d\n”,x);

B. if(a==0)printf(“%d\n”,x);else printf(“%d\n”,y);

C. if(

D. printf(“%d\n”,x);else printf(“%d\n”,y);

解析:A、B、D选项的含义均为:a的值如果为0,打印y的值,否则打印x的值。而C选项的含义是:a的值为0时打印x的值,不为0时打印y的值,与其他选项正好相反。

9.有以下程序:

#include

main()

{ int a=0,b=0,c=0,d=0;

if(a=1)b=1;c=2;

else d=3;

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

}

}

程序的运行结果是( )。(C)

A. 1,1,2,0

B. 0,0,0,3

C. 编译有错

D. 0,1,2,0

解析:本题中if(a=1)b=1;与else d=3;之间多了语句c=2;,所以会出现else语句的位置错误的编译失败提示。

10.设有定义:int a=1,b=2,c=3;以下语句中执行效果与其他3个不同的是( )。

C

解析:由于a不小于b,所以所有选项中的条件都为假,A选项中实际执行了a=b;b=c;两个操作。而B、C、D选项由于条件不成立,所以什么也没有做,所以选择C选项。

11.有以下程序:

#include

main()

{ int x=1,y=0;

if(!x)y++;

else if(x==0)

if(x)y+=2;

else y+=3;

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

}

程序运行后的输出结果是( )。(D)

A. 3

B. 2

C. 1

D. 0

解析:在jf else语句中,else总是与离它最近的if配对。本题中x为1,所以!x为0,所以执行else if语句中的内容,判断(x==0)是否成立,因为x为1,所以条件不成立,所以else if内部的if…else语句不再执行,y的值还是初始值0。

12.有嵌套的if语句:

if(a<b)

if(a<c)k=a;

else k=c:

else if(b<c)k=b;

else k=c:

以下选项中与上述if语句等价的语句是( )。(B)

A. k=(a&

本文档预览:3600字符,共11846字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C语言(选择结构、循环结构)机试模拟试卷1

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号