ten$1 发表于 2017-12-30 17:18:20

为什么不行在else(l==2)去掉便可以了?

// Note:Your choice is C++ IDE
#include "iostream.h"
void main()
{
    int a,b,c,d,l;
    a=1217;
    c=1217;
    cout<<"请输入账户:____\b\b\b\b";
    cin>>b;
    if(b==a)
    {
    cout<<"请输入密码:____\b\b\b\b";
      cin>>d;
      if(c==d)
      {
                cout<<"Yes!";
                cout<<"欢迎来到程悦小世界,你想了解什么?\n";
                cout<<"输入1了解喜欢谁。输入2了解她的秘密。输入3了解她的人生趋势。";
                cin>>l;
                if(l==1)
                {
                        cout<<"朱俊豪";
                }
                else(l==2)
                {
                        cout<<"是男的,花心";
                }
                else if(l==3)
                {
                        cout<<"15岁得筱荃20岁被带5次绿帽30岁被抢劫40岁被车撞死。";
                }
      }
      
    else
{
      while(cout<<"你错了,你死定了")
      {
                cout<<"你错了,你死定了";
      }
}      
}

BngThea 发表于 2017-12-30 17:48:58

同时有else if 和 else,请把else if 放到前面

ten$1 发表于 2017-12-31 08:46:36

BngThea 发表于 2017-12-30 17:48
同时有else if 和 else,请把else if 放到前面

我试试

风过无痕丶 发表于 2017-12-31 14:09:08

if    // A
else if// B
else// c

这里三个AB都需要判断表达式,而C不需要,而你的 else添加了一个判断表达式。
在我看来哈, else 非必选的。但是有了else似乎更合乎判断流程,
如果 A不成立。 判断B   B也不成立判断.....   这取决于你的程序有多复杂,要判断多少东西。
总的执行下来, 所有的都不成立。还有一个 else 的解决方案。

Wind、 发表于 2018-1-8 01:00:47

else不能加括号判断语句吧,直接就是除了之前的那些判断分支之后的情况,如果要加判断语句请使用 else if
页: [1]
查看完整版本: 为什么不行在else(l==2)去掉便可以了?