首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

那里错了?该如何解决

2012-03-13 
那里错了??????????#include iostreamusingnamespacestdvoidmain(){enummy{ a , b , c , d }myonecin

那里错了??????????
#include <iostream>

using   namespace   std;
void   main()
{
enum   my   { 'a ', 'b ', 'c ', 'd '};
     
my   one;
cin> > one;
switch   (one)
{
case   'a ':
cout < <   "1 " < <endl;   break;

case   'b ':
cout < < "2 " < <endl;     break;

case   'c ':
cout < < "3 " < <endl;   break;

case   'd ':
cout < < "4 " < <endl;   break;
}
}

[解决办法]
把所有的单引号去掉,就ok了
enum第一个默认是0,
你case a 输出1莫意思?

[解决办法]
enum my { a = 'a ',b,c,d};

...
case a: ...
...
[解决办法]
#include <iostream>

using namespace std;
void main()
{
enum my {a,b,c,d};

char one;
cin> > one;
switch (one)
{
case 'a ':
cout < < "1 " < <endl; break;

case 'b ':
cout < < "2 " < <endl; break;

case 'c ':
cout < < "3 " < <endl; break;

case 'd ':
cout < < "4 " < <endl; break;
}
}
这样就对了~~~
[解决办法]
你定义的枚举变量要赋初值,类似于one=a,one=b等等,枚举类型中不能用常量定义,只能写成
Vitin(卫亭) 的那种或enum my{a,b,c,d};
#include <iostream>

using namespace std;
void main()
{
enum my {a=1,b,c,d};

my one;
one=b;
switch (one)
{
case 1:
cout < < "1 " < <endl; break;

case 2:
cout < < "2 " < <endl; break;

case 3:
cout < < "3 " < <endl; break;

case 4:
cout < < "4 " < <endl; break;
}
}

[解决办法]
楼上的,你怎样接收字母?
这是我的做法:
#include <iostream>
using namespace std;
int main( )
{
enum my {a,b,c,d};
char one;
cout < < "输入一个字母\n ";
cin> > one;
while(one> = 'a '&&one <= 'd ')
{
switch (one)
{
case 'a ':
cout < < "1 " < <endl; break;
case 'b ':
cout < < "2 " < <endl; break;
case 'c ':
cout < < "3 " < <endl; break;
case 'd ':
cout < < "4 " < <endl; break;
}
cout < < "输入一个字母\n ";
cin> > one;
}
getchar();
getchar();
}
编译通过。

热点排行