计算机二级

以下语句错误的是A.If a=1 And b=2 Then C=3 End lfB.If a=1 Then C=2 Else lf a=2 Then C=2 End lfC.If a=1 Then C=3 End IfD.If a=1 Then C=2E1se If a=2 Then C=2 End lf Eud If

题目

以下语句错误的是

A.If a=1 And b=2 Then C=3 End lf

B.If a=1 Then C=2 Else lf a=2 Then C=2 End lf

C.If a=1 Then C=3 End If

D.If a=1 Then C=2E1se If a=2 Then C=2 End lf Eud If

参考答案和解析
正确答案:D
解析:lf选择控制结构的两种形式为:“IfThen…EndIf”与“IfThen…ElseIfThen…EndIf”,选项D的写法是错误的,多出了EndIf。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下面程序段中正确的是()。A.If x<0 Then y=0 If x<1 Then y=1 If x<2 Then y=2 If x>=2 Then y=3B

下面程序段中正确的是( )。

A.If x<0 Then y=0 If x<1 Then y=1 If x<2 Then y=2 If x>=2 Then y=3

B.If x>=2 Then y=3 If x>1 Then y=2 If x>=0Then y=1 If x>0 Then y=0

C.If x<0 Then y=0 Else If>=0Then y=1 Else y=3 End If

D.If x>=2 Then y=3 Else If>=1 Then y=2 Else y=0 End If


正确答案:D

第2题:

执行下列语句后整型变量a的值是 ______。 If(3-2)>2 Then a=10 Else If(10/2)=6 Then a=20 Else a=30 End If

A.10

B.20

C.30

D.不确定


正确答案:C
解析:前两个判断条件都不满足,所以真正执行的赋值语句只有最后一句,所以a为30。

第3题:

下列CASE语句中执行结果不为空的是()

A、SELECTCASEWHEN125THEN'true'ELSE'false'END;

B、SELECTCASEBINARY'B'WHEN'a'THEN1WHEN'b'THEN2END;

C、SELECTCASEWHEN-10THEN'true'END;

D、SELECTCASE'one'WHEN1THEN'one'WHEN2THEN'two'END;


正确答案:A

第4题:

三元条件运算符ex1?ex2:ex3,相当于下面的( )语句。

A.if(ex2) ex1; else ex3;

B.if(ex3) ex2; else ex1;

C.if(ex1) ex3; else ex2;

D.if(ex1) ex2; else ex3;


正确答案:D
解析:问号表达式的含义是先判断表达式ex1的值,如果该值为真,执行语句ex2,否则执行ex3,因此选择D。

第5题:

有定义语句:int a=1,b=2,c=3,x;,则以下选项中各程序段执行后,x的值不为3的是

A.if (c<a) x=1; else if (b<a) x=2; else x=3;

B.if (a<3) x=3; else if (b<a) x=2; else x=1;

C.if (a<3) x=3; if (a<2) x=2; if (a<1) x=1;

D.if (a<b) x=b; if (b<c) x=c; if (c<a) x=a;


正确答案:C
解析:选项A),B)考查了多分支结构的用法,选项A)中的程序段执行时,ca,ba条件均不成立,故执行else后的语句,x值为3;选项B)中a3条件成立,执行x=3;而选项C),D)是单分支结构的用法,选项C)中程序段执行时,a<3条件成立,x=3,但条件a2也成立,此时执行x=2,下一个条件不成立,不再执行其后的语句。

第6题:

有以下程序: include using namespace std; int main() {int a=5;b=4,c=3,d=2;if(a>b

有以下程序: #include<iostream> using namespace std; int main( ) { int a=5;b=4,c=3,d=2; if(a>b>c) cout<<d<<end1; else if((c-1>:d) ==1) cout<<d+1<<end1; else cout<<d+2<<end1; return 0; } 执行后的输出结果是( )。

A.2

B.3

C.4

D.编译时有错,无结果


正确答案:B
解析:表面上看,本题很容易得到答案。其实不然,出题者在题中隐藏了一个陷阱。粗心的读者可能会想当然地认为if语句中的条件表达式“a>b>c”成立(因为a=5,b=4,c=3)。然后执行if后面的语句,就得到错误答案A。要想正确解答本题,先来了解关系运算符的一些知识:在C++语言中,true(真)是不为0的任何值,而false(假)是0。在使用关系运算符和逻辑运算符的表达式时,若结果为true(真),则返回1;若结果为false(假),则返回的是0。根据以上知识分析程序:第1步,判断if后面的条件表达式(a>b>C)是否成立。根据运算符的结合性,先计算表达式a>b,因为a=5,b=4,所以可得到答案true,其返回值为1。再计算表达式1>c,由于c=3,所以可得到答案为false(假),其返回值为0。因此if后面的条件表达式不成立,继续下面的条件判断。第2步,计算elseif后面的条件表达式((c-1>=D)==1),把c=3,d=2代入此条件表达式,可得到答案为true,此条件表达式成立,故执行elseif后面的语句,输出结果为3。

第7题:

有定义:int a=1,b=2,c=3,x;则以下选项中各程序段执行后,x的值不为3的是( )。

A.if(c<a) x=1; else if(b<a) x=2; else x=3;

B.if(a<3) x=3; else if(a<2) x=2; else x=1;

C.if(a<3) x=3; if (a<2) x=2; if (a<1) x=1;

D.if (a<b) x=b; if (b<c) x=c; if (c<a) x=a;


正确答案:C
解析:选项A),因为前面两个条件都不满足,所以执行x=3。选项B),a3成立,执行x=3。选项C),a3成立,执行x=3;a2成立,执行x=2;a1不成立,不执行x=1,所以执行此段程序后x=2。选项D),ab成立,执行x=b,此时x=2;bc成立,执行x=c,此时x=3;ca不成立,不执行x=a,所以执行此段程序后x=3。

第8题:

下列不是分支结构的语句是( )。

A.If…Then…End If

B.While…Wend

C.If…Then…Else…End If

D.Select…Case…End Select


正确答案:B
解析:本题考查控制结构的知识。选项A)是一个单分支选择结构;选项C)是一个双分支选择结构:选项 D)是一个多分支选择结构:选项B)是一个循环结构。

第9题:

函数过程F1的功能是:如果参数b为奇数,则返回值为1,否则返回值为0,以下能正确实现上述功能代码的是______。

A.Function F1(b As Integer) If b Mnd 2=0 Then Return 0 Else Return 1 End If End Function

B.Function F1(b As Integer) If b Mod 2=0 Then F1=0 Else F1=1 End If End Function

C.Function F1(b As Integer) If b Mod 2=0 Than F1=1 Else F1=0 End If End Function

D.Function F1(b As Integer) If b Mod 2<>0 Then Return 0 Else Return 1 End If End Function


正确答案:B
解析:b为偶数的条件是“bMod2=0”,当b为偶数时返回0,应将0赋给函数名F1,当b为奇数时返回1,即将1赋给F1。

第10题:

有定义语句:int a=1,b=2,c=3,x;,则以下选项中各程序段执行后,x的值不为3的是

A.if(c<a) x=1; else if(b<a) x=1; else x=3;

B.if(a<3)x=3; else if(a<2)x=2; else x=1;

C.if(a<3)x=3; if(a<2)x=2; if(a<1)x=1;

D.if(a<b) x=b; if(b<c) x=c; if(c<a) x=a;


正确答案:C
解析:选项A首先判断if语句条件中表达式的值“31”为假,然后执行最近的else后面的语句,该else后面又为if-else语句,在这个if-else语句中首先判断该if语句条件中表达式的值“21”为假,程序执行其最近的else后面的语句,将3赋值给x。
  选项B中首先判断if语句条件中表达式的值“13”为真,然后执行最近的else后面的语句“x=3”,后面的else不再执行,最后x的值为3。
  选项C中,首先执行第一条if语句,由于“13”为真,执行此if后面的语句“x=3”,接着执行第二条if语句,由于“12”为真,执行此if后面的语句“x=2”,接着执行第三条 if语句,由于“11为假,后面的语句不执行,所以最后的x值为2不为3。
  选项D中;首先执行第一条if语句,由于“ab”为真,执行此if后面的语句“x=b”;接着执行第二条if语句,由于“bc”,为真,执行此if后面的语句“x=c”,接着执行第三条if语句,由于“ca”为假,后面的语句不执行,所以最后的x值为c即为3。

更多相关问题