24小时热门版块排行榜    

CyRhmU.jpeg
查看: 878  |  回复: 9

小muer

金虫 (正式写手)

[求助] 为什么这个程序无法输出结果呢?

#include
using namespace std;
int main()
{ int x,m;
  char A,B,C,D,E;
  cout<<"please enter x"<   cin>>x;
  m=x%10;
  switch(m)
{case0:
case1:
case2:
case3:
case4:
case5:cout<<'E';break;
case6:cout<<'D';break;
case7:cout<<'C';break;
case8:cout<<'B';break;
case9:
case10:cout<<'A';break;
return 0;
}
}
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖


感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2013-03-26 22:36:18
ben_ladeng: 专家考核 2013-03-27 16:55:21
把switch中 cout后面的所有都改成双引号,单引号是字符,不是字符串.关于cout单引号输出内容是什么,比较复杂,需要计算一下.

另外把return 0放到switch外面去
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2013-03-26 20:49:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zheng0323

铜虫 (小有名气)

【答案】应助回帖


感谢参与,应助指数 +1
jjdg: 金币+1, 感谢解释 2013-03-26 22:36:28
用cout输出内容的时候,不会立即输出到屏幕,而是放在缓冲区中,所以会出现楼主的现象。
要解决这个问题,只要在cout语句后面,强制把缓冲器内容输出屏幕,即加入语句
cout.flush();
3楼2013-03-26 21:50:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小muer

金虫 (正式写手)

引用回帖:
3楼: Originally posted by zheng0323 at 2013-03-26 21:50:48
用cout输出内容的时候,不会立即输出到屏幕,而是放在缓冲区中,所以会出现楼主的现象。
要解决这个问题,只要在cout语句后面,强制把缓冲器内容输出屏幕,即加入语句
cout.flush();

会有这种情况吗?这个语句我还没有学呢~应该不会用到啊~

[ 发自手机版 http://muchong.com/3g ]
4楼2013-03-27 06:39:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

布瓜的世界

金虫 (小有名气)

【答案】应助回帖

其实只需要按照2楼的说法去执行就行了,关键是你的return 0的位置放得不对,起始只要把return 0 放好就有输出显示了。
简约之上
5楼2013-03-30 10:01:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小muer

金虫 (正式写手)

引用回帖:
5楼: Originally posted by 布瓜的世界 at 2013-03-30 10:01:32
其实只需要按照2楼的说法去执行就行了,关键是你的return 0的位置放得不对,起始只要把return 0 放好就有输出显示了。

试过~还是不可以~

[ 发自手机版 http://muchong.com/3g ]
6楼2013-03-30 11:26:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

布瓜的世界

金虫 (小有名气)

【答案】应助回帖

★ ★
ben_ladeng: 金币+2, 欢迎常来 2013-03-30 15:00:31
引用回帖:
6楼: Originally posted by 小muer at 2013-03-30 11:26:39
试过~还是不可以~
...

都犯了基础性的错误,你输出的是字符,开始的时候不应该再定义字符的,我试了下把字符声明去掉就可以了。
#include
using namespace std;


int main()
{ int x,m;
//  char A,B,C,D,E;
  cout<<"please enter x"<   cin>>x;
  m=x%10;
  switch(m)
{
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:cout<<'E'< case 6:cout<<'D'< case 7:cout<<"C"< case 8:cout<<'B'< case 9:
case 10:cout<<'A'<
}
  return 0;

}
简约之上
7楼2013-03-30 13:38:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小muer

金虫 (正式写手)

引用回帖:
7楼: Originally posted by 布瓜的世界 at 2013-03-30 13:38:46
都犯了基础性的错误,你输出的是字符,开始的时候不应该再定义字符的,我试了下把字符声明去掉就可以了。
#include<iostream>
using namespace std;


int main()
{ int x,m;
//  char A,B,C, ...

奇了,

[ 发自手机版 http://muchong.com/3g ]
8楼2013-03-30 14:49:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

布瓜的世界

金虫 (小有名气)

引用回帖:
8楼: Originally posted by 小muer at 2013-03-30 14:49:11
奇了,
...

A,B,C,D的字符是不需要定义的,他们是直接可以使用的,你定义了反而使得系统不知道你后面的输出字符是变量还是字符。

» 本帖已获得的红花(最新10朵)

简约之上
9楼2013-03-30 17:12:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小muer

金虫 (正式写手)

送鲜花一朵
引用回帖:
9楼: Originally posted by 布瓜的世界 at 2013-03-30 17:12:09
A,B,C,D的字符是不需要定义的,他们是直接可以使用的,你定义了反而使得系统不知道你后面的输出字符是变量还是字符。...

感谢~

[ 发自手机版 http://muchong.com/3g ]
10楼2013-03-30 19:05:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 小muer 的主题更新
信息提示
请填处理意见