C语言---Day6

15、enum枚举

---枚举是 C 语言中的一种基本数据类型,用于定义一组具有离散值的常量,它可以让数据更简洁,更易读;通常用于为程序中的一组相关的常量取名字,以便于程序的可读性和维护性

---声明枚举类型

enum Day
{
    MON = 1, TUE, WED, THU, FRI, SAT, SUN
};

---枚举变量的定义:先定义枚举类型,再定义枚举变量

enum Day
{
    MON = 1, TUE, WED, THU, FRI, SAT, SUN
};

int main()
{
    enum Day day;
    day = WED;
    printf("%d", day);  // 3

    return 0;
}

---在C 语言中,枚举类型是被当做 int 或者 unsigned int 类型来处理;若枚举类型是连续的,可以进行遍历,否则不能进行遍历

enum Day
{
    MON = 1, TUE, WED, THU, FRI, SAT, SUN
} day;

int main()
{
    // 遍历枚举元素
    for (day = MON; day <= SUN; day=(Day)(day+1)) {
        printf("枚举元素:%d \n", day);
    }

    return 0;
}

                      ---枚举在 switch 中的使用:

enum color 
{ 
    red = 1, green, blue 
};

int main()
{
    enum color favorite_color;
    printf("请输入你喜欢的颜色: (1. red, 2. green, 3. blue): ");
    scanf_s("%u", &favorite_color);

    switch (favorite_color)
    {
    case 1:
        printf("你喜欢的颜色是红色");
        break;
    case 2:
        printf("你喜欢的颜色是绿色");
        break;
    case 3:
        printf("你喜欢的颜色是蓝色");
        break;
    default:
        printf("你没有选择你喜欢的颜色");
    }

    return 0;
}

---将整数转换为枚举

enum day
{
    saturday, sunday, monday, tuesday, wednesday, thursday, friday
} workday;

    int a = 1;
    enum day weekend;
    weekend = (enum day)a; // 类型转换
    printf("weekend:%d", weekend);  // weekend:1

 

posted @ 2024-01-15 15:51  o·0  阅读(5)  评论(0编辑  收藏  举报