标题:刚学C#遇到了新问题,求解!!!
只看楼主
宇智波曌
Rank: 2
等 级:论坛游民
帖 子:98
专家分:15
注 册:2011-4-17
结帖率:100%
已结贴  问题点数:5 回复次数:14 
刚学C#遇到了新问题,求解!!!
Console.WriteLine("请输入选项:");
            int Num = Convert.ToInt32(Console.ReadLine());
             while (Num != 4)
             {
                 Console.WriteLine("请输入选项:");
                 Num = Convert.ToInt32(Console.ReadLine());
                 switch (Num)
                 {
                     case 1:
                         Console.WriteLine("なのと");
                         break;
                     case 2:
                         Console.WriteLine("イタチ");
                         break;
                     case 3:
                         Console.WriteLine("かかシ");
                         break;
                     case 4:
                         Console.WriteLine("Over");
                         break;
                 }

             }
            Console.ReadLine();
怎么我输入1的时候,不是直接显示 なのと 而是先显示  请输入选项: 然后再输入1才显示,请问有谁知道为什么吗?刚学啊!各位高手帮帮忙,谢了。
2011-09-09 00:03
hhwz
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:87
帖 子:687
专家分:4502
注 册:2011-5-22
得分:1 
你输入1时
Console.WriteLine("请输入选项:");
int Num = Convert.ToInt32(Console.ReadLine());
就执行了这2句
然后 进入到while循环中
Console.WriteLine("请输入选项:");
int Num = Convert.ToInt32(Console.ReadLine());
又执行了这两句
当然是先出输入选项 才执行的
用DO while 会比较好一点

2011-09-09 04:13
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
得分:1 
程序代码:
             Console.WriteLine("请输入选项:");
             int Num = Convert.ToInt32(Console.ReadLine());
             while (Num != 4)
             {
                 switch (Num)
                 {
                     case 1:
                         Console.WriteLine("なのと");
                         break;
                     case 2:
                         Console.WriteLine("イタチ");
                         break;
                     case 3:
                         Console.WriteLine("かかシ");
                         break;
                     case 4:
                         Console.WriteLine("Over");
                         break;
                 }

                 Console.WriteLine("请输入选项:");
                 Num = Convert.ToInt32(Console.ReadLine());
             }
             Console.ReadLine();

   唯实惟新 至诚致志
2011-09-09 10:58
一根筋
Rank: 1
等 级:新手上路
帖 子:9
专家分:6
注 册:2011-9-8
得分:1 
同2楼观点
2011-09-09 16:18
宇智波曌
Rank: 2
等 级:论坛游民
帖 子:98
专家分:15
注 册:2011-4-17
得分:0 
回复 3楼 qq1023569223
我想说的是当我输入 4 的时候,它显示 over ,然后我按下回车之后窗口关闭。怎么实现呢?

[ 本帖最后由 宇智波曌 于 2011-9-10 12:25 编辑 ]
2011-09-10 12:01
LennyMogwai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:15
注 册:2011-7-24
得分:1 
回复 5楼 宇智波曌
那你就别把switch语句放在while循环里,你都while(Num!=4)了,你输入4应该就不会执行这个while循环了吧
2011-09-10 12:39
宇智波曌
Rank: 2
等 级:论坛游民
帖 子:98
专家分:15
注 册:2011-4-17
得分:0 
回复 6楼 LennyMogwai
那只能输入一次啊!我要的是能循环输入,当输入 4 的时候停止
2011-09-10 14:37
abanden22
Rank: 1
等 级:新手上路
帖 子:2
专家分:1
注 册:2011-6-21
得分:1 
             Console.WriteLine("请输入选项:");
             int Num = Convert.ToInt32(Console.ReadLine());
             while (Num != 4)
             {
                 switch (Num)
                 {
                     case 1:
                         Console.WriteLine("なのと");
                         break;
                     case 2:
                         Console.WriteLine("イタチ");
                         break;
                     case 3:
                         Console.WriteLine("かかシ");
                         break;
                     case 4:
                         Console.WriteLine("Over");
                         break;
                 }
                   if(Num==4)
                         break;
                 Console.WriteLine("请输入选项:");
                 Num = Convert.ToInt32(Console.ReadLine());
             }
             Console.ReadLine();
2011-09-10 18:14
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
得分:0 
程序代码:
             Console.WriteLine("请输入选项:");
             int Num = Convert.ToInt32(Console.ReadLine());
             while (Num != 4)
             {
                 switch (Num)
                 {
                     case 1:
                         Console.WriteLine("なのと");
                         break;
                     case 2:
                         Console.WriteLine("イタチ");
                         break;
                     case 3:
                         Console.WriteLine("かかシ");
                         break;
                 }

                 Console.WriteLine("请输入选项:");
                 Num = Convert.ToInt32(Console.ReadLine());
             }
             Console.WriteLine("Over");
             Console.ReadKey();


   唯实惟新 至诚致志
2011-09-10 19:17
LennyMogwai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:15
注 册:2011-7-24
得分:0 
回复 7楼 宇智波曌
其实,我只是解释为什么你输入4而不能达到你想要的结果而已…………

你这个循环都写出来了,稍微变换一下应该没问题吧……
2011-09-10 19:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-349528-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.102102 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved