| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 752 人关注过本帖
标题:循环问题,新手求解,为什么成死循环了
只看楼主 加入收藏
飞跃的乌龟
Rank: 2
等 级:论坛游民
帖 子:96
专家分:18
注 册:2012-10-20
结帖率:90.32%
收藏
已结贴  问题点数:10 回复次数:10 
循环问题,新手求解,为什么成死循环了
#include<iostream>
using namespace std;
int main()
{
    int a;
    cout<<"现在正在下雨吗?"<<endl;
    cin>>a;
    while((a!='Y')||(a!='N'))
    {
        cout<<"现在正在下雨吗?"<<endl;
        cin>>a;     /*为什么这里不停下来*/
    }
    if(a=='Y')
        cout<<"现在正在下雨."<<endl;
    else
        cout<<"现在没有下雨."<<endl;
    return 0;
}
目的是回答Y 下雨,回答N 不下雨,其他答案就再次提问      
2013-06-04 22:33
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:1 
用goto

DO IT YOURSELF !
2013-06-04 22:38
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:9 
#include<iostream>
 using namespace std;
 int main()
 {
     char a;
     do
     {
     cout<<"现在正在下雨吗?"<<endl;
     cin>>a;
     } while((a!='Y')&&(a!='N'));

     //{
     //    cout<<"现在正在下雨吗?"<<endl;
     //    cin>>a;     /*为什么这里不停下来*/
     //}
     if(a=='Y')
         cout<<"现在正在下雨."<<endl;
     else
         cout<<"现在没有下雨."<<endl;
     return 0;
 }



试试这个是不是你想要的结果?

学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2013-06-04 22:45
飞跃的乌龟
Rank: 2
等 级:论坛游民
帖 子:96
专家分:18
注 册:2012-10-20
收藏
得分:0 
回复 2楼 wp231957
goto不会用
2013-06-04 23:10
飞跃的乌龟
Rank: 2
等 级:论坛游民
帖 子:96
专家分:18
注 册:2012-10-20
收藏
得分:0 
回复 3楼 蚕头燕尾
有一点不一样,我看你的看懂了,谢谢
2013-06-04 23:11
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:0 

学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2013-06-04 23:28
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:0 
回复 2楼 wp231957
感觉还是少用goto吧,对初学者来说,锻炼思维的时候不能养成这样的坏习惯是不是呢。

学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2013-06-04 23:30
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
回复 7楼 蚕头燕尾
谁说用goto是坏毛病了呢

DO IT YOURSELF !
2013-06-05 07:23
飞跃的乌龟
Rank: 2
等 级:论坛游民
帖 子:96
专家分:18
注 册:2012-10-20
收藏
得分:0 
回复 8楼 wp231957
老师也这样说,最好不用,但是某个特殊的地方,只有用goto可以很快跳出循环,很简单,忘了是哪个了
2013-06-05 17:02
子楠
Rank: 3Rank: 3
来 自:武汉
等 级:论坛游侠
帖 子:111
专家分:164
注 册:2013-4-9
收藏
得分:0 
回复 楼主 飞跃的乌龟
对于这个程序,定义的是int型,而你输入的时候是char型,程序根本就不识别,所以成死循环了,char型只能强制转换成int型
2013-06-05 17:49
快速回复:循环问题,新手求解,为什么成死循环了
数据加载中...
 
   



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

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