| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 647 人关注过本帖
标题:求大神 帮我看看程序哪里出错了。。。。。。。。
只看楼主 加入收藏
xushengsheng
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
求大神 帮我看看程序哪里出错了。。。。。。。。
public void Login()
        {
            int count=3;
            for (int i = 3; i >0 ; i--)
            {
                Console.WriteLine("请输入用户名:");
                string username = Console.ReadLine();
                Console.WriteLine("请输入密码:");
                string userpwd = Console.ReadLine();
                int result = dbo.CheckUserInfo(username, userpwd);
                if (result == 1)
                {
                    Console.WriteLine("登录成功!");
                    ShowMenu();
                }
                else
                {
                    Console.WriteLine("登录失败!");
                    Login();
                }
                count = i - 1;
                break;
            }
            if (count == 0)
            {
                Console.WriteLine("您没有进入权限!");
            }
            else
            {
                Console.WriteLine("您还有[0]次机会,请重新输入。",count
            }
        }
   提示说检测到无法运行的代码 i--;
搜索更多相关主题的帖子: 输入密码 public 用户名 result 
2013-03-25 15:47
party620
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:18
帖 子:696
专家分:2521
注 册:2013-1-31
收藏
得分:0 
你的 break;直接跳出for循环了
2013-03-25 16:20
xushengsheng
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-22
收藏
得分:0 
回复 2楼 party620
为什么无法实现 循环3次的功能啊 他是一直无限循环啊~~
2013-03-25 16:43
killuamusic
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2013-3-25
收藏
得分:0 
for (int i = 0; i <3 ; i++)
2013-03-25 16:44
killuamusic
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2013-3-25
收藏
得分:0 
public void Login()
        {
            int count;
            for (int i = 3; i <3 ; i++)
            {
                Console.WriteLine("请输入用户名:");
                string username = Console.ReadLine();
                Console.WriteLine("请输入密码:");
                string userpwd = Console.ReadLine();
                int result = dbo.CheckUserInfo(username, userpwd);
                if (result == 1)
                {
                    Console.WriteLine("登录成功!");
                    ShowMenu();
                }
                else
                {
                    Console.WriteLine("登录失败!");
                    Login();
                }
                count = i ;
                break;
            }
            if (count == 3)
            {
                Console.WriteLine("您没有进入权限!");
            }
            else
            {
                Console.WriteLine("您还有[0]次机会,请重新输入。",count
            }
        }
2013-03-25 16:47
killuamusic
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2013-3-25
收藏
得分:0 
BREAK;去了吧
2013-03-25 16:48
xushengsheng
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-22
收藏
得分:0 
都不对~~~
2013-03-25 17:02
yhlvht
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:36
帖 子:707
专家分:4405
注 册:2011-9-30
收藏
得分:20 
我说我的哥啊,你的逻辑有点乱耶,就这几行代码,问题还真多.
首先break;应该放在if (result == 1)里面,因为登录成功,就可以退出循环,不用再验证了
再看else,因为你要循环3次,就算其中一次不成功,那不应该提示失败,应该提示还有N次机会
Login();不要放在for里面,因类你从新调用方法以后,for计数器i又从新赋值了,变成无限递归循环了,按照你的想法,Login()这句应该没有必要写的
最后if (count == 0)
            {
                Console.WriteLine("您没有进入权限!");
            }
            else
            {
                Console.WriteLine("您还有[0]次机会,请重新输入。",count
            }
这里else应该就不需要了,至于if里面,你要提示没有权限也好,还是登录失败也好,其实都是一个意思
2013-03-25 19:56
xushengsheng
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-22
收藏
得分:0 
回复 8楼 yhlvht
此回复 已粉!
2013-03-25 22:36
快速回复:求大神 帮我看看程序哪里出错了。。。。。。。。
数据加载中...
 
   



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

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