C++第一次做业

枚举类型教案设计ios

问题导入:Q:表示一周的七天能用什么数据类型表示?c++

A:int类型就能够,1234567就能表示一周了。spa

Q:这样输入8则虽是合法整数但显然不是一周内,这样无法经过数据类型判断是否是合法,咱们应该用什么数据类型呢?设计

A:能够只用1到7吗?有这种数据类型吗?  c++是容许取某数据类型的子集做为新定义的数据类型code

枚举类型:用户自定义的一种数据类型(与系统自定义好的——int ,float等相对)需声明时将变量的可取值在变量列表一一列出。blog

    声明形式:enum  枚举类型名  {变量值列表}it

enum Weekday{SUN,MON,TUE,WED,THU,FRI,SAT}

注:1.他是个整型的子集——实质  所以枚举值能够作关系运算   且声明时若是不定义值则会依次取默认值{0,1,2,3,4,5,6}io

       2.但枚举元素要视为常量 除定义外不能进行赋值,而定义中从开始定义的一项依次加1 (定义SUN为1,则MON为2,不定义默认为SUN为0)class

但做为一个常量,枚举元素能够给其余变量赋值。stream

       3.整数值要赋给枚举变量要进行强制转换,若是不在枚举值的范围内则强转失败。

 

例:体育比赛的结果又四种可能:WIN,LOSE,TIE,CANCEL编写程序输出这四种状况、

一共四种选择能够声明一个枚举类型的变量存放比赛的结果。

#include <iostream>
using namespace std; enum GameResult {WIN,LOSE,TIE,CANCEL}; int main(){   GameResult result;   GameResult omit=CANCEL; /*此时加不加enum均可以   for (int count =WIN;count<=CANCEL;count++){     result=GameResult(count); /*对枚举元素赋值要先强转     if(result==omit)     count<<"The game was cancelled"<<endl;     else{     count<<"The game was palyed";     if(result==WIN)  count<<"and we won!";     if(result==LOSE)  count<<"and we lost.";     count<<end;     }   }   return 0; }
相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息