#(二)枚举篇
1,枚举类型定义
enum 枚举类型
{
常量列表//各常量之间以逗号隔开
};
例:
enum DAY
{
MON,TUE,WED,THU,FRI,SAT,SUN
};
-
枚举类型是个集合。集合中的元素,也就是枚举成员,是一些命名的整型常量,元素之间用逗号隔开。
-
第一个枚举成员的默认值为0,后续成员值依次递加1。
-
可以自定义枚举类型的值,从而自定义某个范围内的整数。
-
枚举型是预处理指令#define的替代。
2,枚举类型变量定义及初始化
-
第一个枚举成员的默认值为0,后续成员值依次递加1。
-
可以自定义枚举类型的值,从而自定义某个范围内的整数。
令MON=1,则之后的值就会依次递加1!
或者随意给枚举元素赋值,之后的值也是依次递加1;
而枚举类型实际上可以用#define代替,但枚举元素较多时,效率较低!
注:在C语言中,可以给枚举变量赋值任意整型,但在C++中则不允许。
3,应用(判断日期)
判断一年中的某一天是工作日还是休息日?假设一年365天,新年第一天是星期一。
#include<stdio.h>
enum DAY
{
SUN,MON,TUE,WNE,THU,FRI,SAT
};
int main()
{
unsigned int today;
printf("please input the day:\n");
scanf("%d"&today);
enum DAY day=today%7;
switch(day)
{
case MON:
case TUE:
case WNE:
case THU:
case FRI:
printf("The day is a work day!\n");
break;
case SAT:
case SUN:
printf("The day is a free day!\n");
break;
};
return 0;
}