我的朋友正准备参加一些银行考试。问的问题是?
What are the control statement below?
Options
1. if and switch
2.break and if
3.if and while
4.break and continue
并且正确答案标记为1
我相信所有的选择都是正确的吗?
我的信念是否真实。
它们之间有什么区别吗?
答案 0 :(得分:3)
看起来无论谁设置考试都发明了自己的术语。 “控制声明”不是C或C ++中的官方术语。
if
和switch
是选择语句。
while
是迭代声明(以及do
和for
)。
break
和continue
是跳转语句(以及return
和goto
)。
答案 1 :(得分:2)
术语不正确,因为标准没有定义术语控制语句,但由于1
被指示为正确答案,那么他们应该说的是选择语句< / em>的
C99 draft standard定义了以下一组语句,其中包含您问题中列出的语句,选择语句是if
和switch
来自{{1}部分} 选择语句:
6.8.4
selection-statement:
if ( expression ) statement
if ( expression ) statement else statement
switch ( expression ) statement
和break
是跳转语句部分continue
跳转语句:
6.8.6
和jump-statement:
goto identifier ;
continue ;
break ;
return expressionopt ;
是迭代语句部分while
迭代语句:
6.8.5
答案 2 :(得分:2)
你的朋友被问到的问题从根本上被打破了,因为C没有定义“控制语句”这样的东西。即使它确实如此,我的直觉是它应该涵盖所有这些关键字。
因此,试图分析什么做和不属于那个保护伞是一个愚蠢的差事。
鉴于他们认为#1是正确的答案,似乎他们的意思是选择陈述,即你所说的“条件”。 while
,break
和continue
显然不属于该类别。
您可以阅读C99中§6.8(或其他版本的等效文件)中所有不同类型的陈述。
坦率地说,在给这个烂摊子后,我会去另一家银行工作。答案 3 :(得分:1)
Control语句是重复执行的语句,直到循环没有终止。重复表示语句块执行后,它将返回循环以检查条件。 由于重复,它被称为控制声明。
示例:
for(i=0;i<=5;i++)
{
COUT<<"THIS IS CONTROL STATEMENT";
}
条件语句是将执行一次的语句,它不会像for循环那样重复。执行后将不再检查循环条件。
示例:
int i = 5;
if(i==5)
{
COUT<<"THIS IS CONDITIONAL STATEMENT";
}
如果...否则,switch 是条件语句,而 for,while,do ... while 是控制语句。
答案 4 :(得分:0)
(你的问题的不同“陈述类型”的定义似乎有点问题。实际上我不得不从问题中估计它们而不是根据“控制”和“条件”的确切含义来理解你的问题“陈述。”
没有。控制语句改变了程序执行的流程。
条件语句是根据条件执行此操作的。
我认为正确答案是(4)。
答案 5 :(得分:0)
根据Java文档,控制流语句有两种类型:
两个控制流语句都涉及条件,但是执行过程不同。 每种类型都用于特定的例程。
https://docs.oracle.com/javase/tutorial/java/nutsandbolts/flow.html
已更新:
C关于语句使用的是另一种方法 https://docs.microsoft.com/en-us/cpp/c-language/statements-c?view=vs-2019
我发现将Java的知识结合起来很容易理解C,也许OP也能找到它