如果/其他(初学者)

-1 c++ if-statement

int x = 0;

printf("Geben Sie bitte ihr Alter ein \n");
scanf_s("%i",&x);

if (x <= 15)
{
    printf("Sie duerfen keinen Alkohol trinken! \n");
}

else
{
    printf("Sie duerfen Bier trinken \n");

    if (x >= 18)
    {
        printf("Sie duerfen Alkohol jeglicher Art trinken! \n");
    }
}
Run Code Online (Sandbox Code Playgroud)

条件:

  • 0-15之间:无酒精
  • 16-17岁之间:允许啤酒
  • 18岁以上:允许所有含酒精的饮料

问题是,当您说您已年满18岁时,它显示了第二部分

printf("Sie duerfen Bier trinken \n");
Run Code Online (Sandbox Code Playgroud)

同样,我真的不知道该如何解决。

Pet*_*ker 10

您可以ifelse早期版本的部分中使用表达式if。这段代码具有三个需要测试的条件,看起来应该更像这样:

if (x <= 15)
    {
    printf("Sie duerfen keinen Alkohol trinken! \n");
    }

else if (x < 18)
    {
    printf("Sie duerfen Bier trinken \n");
    }
else
    {
    printf("Sie duerfen Alkohol jeglicher Art trinken! \n");
    }
}
Run Code Online (Sandbox Code Playgroud)