| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1151 人关注过本帖
标题:一个初学的习题
取消只看楼主 加入收藏
ReadingLi
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-6
收藏
 问题点数:0 回复次数:5 
一个初学的习题

初学C++,刚自学了一章,做后面的习题不会了,主要内容是实现:向用户提问"现在正在下雨吗?(y/n)",输下Y则显示"现在下",输入N则显示"不下",我翻前面的书,要求输的的全是数字,我用cin,和if还会弄,现在变成Y和N了就不会了,想到了用枚举,还是总不对,以下是我的程序,看是哪的问题啊?
#include <iostream>
using namespace std;
enum weather {Y,N};
void main ()
{
weather a;
int b;
cout <<"现在正在下雨吗?(Y/N): ";
cin>>b;
a=(weather)b;
if (a==Y)

{ cout <<"现在正在下雨!"<<endl;}


}

搜索更多相关主题的帖子: 习题 初学 
2007-08-06 13:38
ReadingLi
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-6
收藏
得分:0 
回复:(wangweicoin)不用去用枚举,你的枚举中,enu...

谢谢,你讲的枚举我明白了,用的给的程序可以做到要求的效果,可是我要把原题的要求都加进去,结果就不成了,我输入什么都是正在下雨啊?
#include <iostream>
using namespace std;
void main ()
{
int b,Y,N;
cout <<"现在正在下雨吗?(Y/N): ";
cin>>b;
if (b==Y)

{ cout <<"现在正在下雨!"<<endl;}
else if (b==N)
{cout <<"现在没有下雨!"<<endl;}
else
cout <<"现在正在下雨吗?(Y/N): ";
}
是我的IF语句不对吗,可我是看书上写的啊?

2007-08-06 15:41
ReadingLi
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-6
收藏
得分:0 

哈哈,谢谢大家,通过你们的讲解终于弄出来了.
#include <iostream>
using namespace std;
void main ()
{
char b;
cout <<"现在正在下雨吗?(Y/N): ";
cin>>b;
if (b=='y')

{ cout <<"现在正在下雨!"<<endl;}
else if (b=='n')
{cout <<"现在没有下雨!"<<endl;}
else
cout <<"现在正在下雨吗?(Y/N): ";
}
不过还有个小问题,在if(b=='y')的时候, y , "y" , 'y' 这三个的区别是什么啊?

2007-08-07 12:55
ReadingLi
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-6
收藏
得分:0 
OK,谢了BZ了,一定先多看看书,呵呵
2007-08-07 13:07
ReadingLi
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-6
收藏
得分:0 
试了你的程序,也可以啊,呵呵,就是我还没学到哪,scanf()那个看不懂,主要是()里的,等学到了再研究下了
2007-08-08 10:48
ReadingLi
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-6
收藏
得分:0 
回复:(wingyip)不明白樓主為什么要a=(weather)b;這...

是啊,刚开始不会啊,想了半天就弄了个枚举,后来到这里朋友们才说用char 就行了,现在好多了,呵呵

2007-08-08 21:56
快速回复:一个初学的习题
数据加载中...
 
   



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

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