C++ 第一次作业 枚举类型

C++枚举类型

顾名思义,只要将需要的变量值一一列举出来,便构成了一个枚举类型

枚举类型定义:是指将变量的值一一列出来,变量的值只限于列举出来的值的范围内.

枚举类型放在窗体模块、标准模块或共用模块中的声明部分,通过enum语句来定义。

教学目标

熟练运用枚举类型的知识解决相关问题

教学过程

## 声明形式如下 ##

`enum 枚举类型名{变量值列表}`

相关定义1枚举类型具有默认值,依次为0,1,2,3...也可以在声明时另行指定枚举元素的值enum Weekday {SUN=7,MON=1,TUE,WED,THU,FRI,SAT};

例如:表示一个星期中的七天,用什么类型来表示呢?
你肯定会说:用整形啊,但是如果用户输入的是9呢,这既是一个合法的整数,但是同时又不是星期一到七中间的一天,该如何解决呢?
那么就需要通过人工来解决,那么我们能不能通过数据类型来解决呢?

定义一个枚举类型,要求列举出该类型的全部可取值。
例如
enum Weekday {MON,TUE,WED,THU,FRI,SAT,SUN};
关键字enum+类型名Weekday

相关定义2 枚举值可以进行关系运算,整数值不能直接赋给枚举变量,要进行强制类型转换,要在枚举类型的定义值之中,枚举类型总是被赋予合法的值

例2 某次比赛的结果存在四种可能,WIN,LOSE,TIE,CANCEL,编写程序输出这四种情况

#include <iostream>
using namespace std;
enum GameResult{WIN ,LOSE ,TIE ,CANCEL};
int main()
{
GameResult result;
enum GameResult omit=CANCEL;
for(int count=WIN; count<=CANCEL;count++)
{
result=GameResult(count);
if(result==omit)
cout<<"The game was cancelled"<<endl;
else
{
cout<<"The game was played";
if(result==WIN)
cout<<"and we won!";
if(result==LOSE)
cout<<"and we lost.";
cout<<endl;
}
}
return 0;

总结与反思

枚举类型对于数据合法性的解决十分具有帮助。

posted on 2019-09-14 17:25  nianshaomingtu  阅读(219)  评论(0编辑  收藏  举报

导航