📜  同时在C / C++中执行if和else语句

📅  最后修改于: 2021-05-25 18:40:16             🧑  作者: Mango

编写一个同时执行两个if-else块语句的C / C++程序。

Syntax of if-else statement in C/C++ language is:
if (Boolean expression)
{
    // Statement will execute only 
    // if Boolean expression is true
}
else
{
    // Statement will execute only if 
    // the Boolean expression is false 
}

因此,我们可以得出结论,if-else语句块中只有一个将根据布尔表达式的条件执行。

但是我们可以更改代码,以便在相同条件下同时执行if块和else块中的语句。

诀窍是使用goto语句,该语句在同一函数提供从’goto’到带标签的语句的无条件跳转。

下面是同时执行两个语句的C / C++程序:

C++
#include 
using namespace std;
int main()
{
if (1) // Replace 1 with 0 and see the magic
{
    label_1: cout <<"Hello ";
     
    // Jump to the else statement after
    // executing the above statement
    goto label_2;
}
else
{
    // Jump to 'if block statement' if
    // the Boolean condition becomes false
    goto label_1;
 
    label_2: cout <<"Geeks";
}
return 0;
}
 
// this code is contributed by shivanisinghss2110


C
#include 
int main()
{
  if (1) //Replace 1 with 0 and see the magic
  {
    label_1: printf("Hello ");
     
    // Jump to the else statement after
    // executing the above statement
    goto label_2;
  }
  else
  {
    // Jump to 'if block statement' if
    // the Boolean condition becomes false
    goto label_1;
 
    label_2: printf("Geeks");
  }
  return 0;
}


输出:

Hello Geeks

因此,if和else块的两个语句同时执行。可以看到另一个有趣的事实,即Output将始终保持不变,并且将不取决于布尔条件是true还是false。

–在任何编程语言中都强烈建议不要使用goto语句,因为它会使跟踪程序的控制流变得困难,使程序难以理解和修改。作为程序员,我们应该避免在C / C++中使用goto语句。

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。