为了账号安全,请及时绑定邮箱和手机立即绑定

如何正确实现while逻辑

如何正确实现while逻辑

C#
慕容3067478 2022-11-13 15:50:06
我正在编写一种方法来获取具有三个选项的菜单的用户输入:1、2、3。我的 do while 循环运行,但是我的 while 逻辑仍在接受不需要的输入。为什么我的代码没有在我设定的值范围之外循环输入?我尝试了不同的逻辑运算符,删除逻辑运算符并在 Option < Value 时进行设置。private static MenuOption ReadUserOption(){    int Option;    Console.WriteLine("Please make a selection");    Console.WriteLine("1, will run TestName, 2 will run Guess that number, 3 Wil quit the program.");    do     {        Option = Convert.ToInt32(Console.ReadLine());        return (MenuOption)(Option - 1);    } while (Option < 1 || Option > 3);}我的目标是让 <1 和 >3 之外的任何用户输入让循环继续,直到输入该范围内的值。在当前状态下,如果我输入 0,循环将接受该值并输出 -1。
查看完整描述

1 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

您只需要将 return 语句移到循环之外


private static MenuOption ReadUserOption()

{

    int Option;

    Console.WriteLine("Please make a selection");

    Console.WriteLine("1, will run TestName, 2 will run Guess that number, 3 Wil quit the program.");

    do 

    {

        Option = Convert.ToInt32(Console.ReadLine());

    } while (Option < 1 || Option > 3);

    return (MenuOption)(Option - 1);


}


查看完整回答
反对 回复 2022-11-13
  • 1 回答
  • 0 关注
  • 126 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号