A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 月儿圆 于 2013-6-16 00:32 编辑

如下:是在视频中学的,自己想到的,但是总是觉得程序不够简化,谁能优化一下?问题是进入if条件后不能继续上面的while循环了

  1. <P>bool flag = false;
  2. Console.WriteLine("这道题你会了吗(y/n)");
  3. string answer = Console.ReadLine();
  4. answer = answer.ToLower();
  5. int i = 0;
  6. while (answer == "n" && i < 10)
  7. {
  8. Console.WriteLine("老师讲一下");

  9. Console.WriteLine("这道题你会了吗(y/n)");
  10. answer = Console.ReadLine();
  11. answer = answer.ToLower();
  12. i++;
  13. }

  14. if (answer == "y")
  15. {
  16. Console.WriteLine("好聪明你们可以放学了");
  17. flag = true;
  18. }
  19. if (answer != "n" && answer != "y")
  20. {
  21. Console.WriteLine("输入有误,请重新输入");</P>
  22. <P>answer = Console.ReadLine();
  23. answer = answer.ToLower();

  24. flag = true;
  25. }
  26. if (flag == false)
  27. {
  28. Console.WriteLine("讲了十遍还不会?!放学吧!明天再讲!!!");
  29. }
  30. Console.ReadKey();

  31. </P>
复制代码

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

1 个回复

倒序浏览
本帖最后由 许庭洲 于 2013-6-13 06:51 编辑

while(answer != "n" && answer != "y")
{
     while (answer == "n" && i < 10)
     {
          Console.WriteLine("************");
          Console.WriteLine("***********(y/n)");
          answer = Console.ReadLine();
          answer = answer.ToLower();
          i++;
    }
    if (answer == "y")
    {
        Console.WriteLine("*******************");
        flag = true;
    }
}
if (flag == false)
{
      Console.WriteLine("**************************");
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马