枚举教学
枚举教案
1.枚举概论:
枚举是我们自己定义的一个集合,比如说我们数学里面所学的集合A={1、2、3},当我们要使用A这个集合的时候,我们只能够使用集合A里面的1、2、3这三个元素,不是A里面的元素我们就不可以使用。
同样,枚举和这个集合是类似的,当我们定义了一个枚举类型的时候,我们声明它里面有几个元素,在我们使用这个枚举的时候,我们只能够使用它有的元素,没有的元素我们是无法使用,系统就会报错!
枚举还有一个特点,就是可以代表数值,比如说第一个定义的元素对应的值为0,每个枚举元素从0开始,逐一增加。此时,这个数值也代表他们本身,相当于每一个元素有两个名字。
2.教学目的:
学会在适当的时候使用枚举类型,发挥最大的作用。
3.教学重点:
枚举类型的定义及应用。
4.教学过程:
声明枚举类型:
enum 枚举类型名称 {枚举值名称,枚举值名称};
定义枚举变量:
enum 枚举类型名称 枚举变量1,枚举变量2,......;
例子:enum response {SUN,MON,TUE,WED,THU,FRI,SAT};
enum response weekday;
枚举类型应用说明:
1.对枚举元素按常量处理,不能对它们赋值。例如下面的语句是非法的:
SUN=0;
2.枚举元素具有默认值,它们依次为0,1,2,.......。例如上例子SUN为0,MON为1,TUE为2.
......。
3.也可以再声明如:
enum weekday {SUN=7,MON=1,TUE,WED,THU,FRI,SAT};
则SUN为7,MON为1.......。
4.枚举值可以进行关系运算。
5.整数值不能直接赋给枚举变量,如需要将整数赋值给枚举变量,应进行强制类型转换。
枚举实例:
include
using namespace std;
enum gameresult{WIN,LOSE,TIE,CANCEL};
int main()
{
gameresult result;
gameresult omit = CANCEL;
for(int count=WIN;count<=CANCEL;count++)
{
result=gameresult(count);
if(resultomit)
{
cout<<"the game was cancelled"<<endl;
}
else
{
cout<<"the game was played";
if(resultWIN)
cout<<"and we won!";
if(result==LOSE)
cout<<"and we lost!";
cout<<endl;
}
}
return 0;
}
运行截图
5.总结
枚举常使用的地方:我们要从另一个函数得到一个值,但是这个值只能够在一个范围内的,此时我们就可以使用枚举来定义这个范围。限制另外一个函数能够传递进来的值,只能够是枚举类型里面的元素。