学习笔记(11):C语言入门到精通-枚举类型-上

立即学习:https://edu.csdn.net/course/play/10534/378127?utm_source=blogtoedu

学习目标:

1. 掌握枚举类型的使用方法。

 

示例代码:

#include <stdio.h>
#include <string.h>

void first_kind(char* in_color) {
    enum colour {
        white,
        black,
        blue,
        red,
        other
    };

    enum colour my_color = white;

    if (strcmp(in_color, "white") == 0) {
        my_color = white;
    } else if (strcmp(in_color, "black") == 0) {
        my_color = black;
    } else if (strcmp(in_color, "blue") == 0) {
        my_color = blue;
    } else if (strcmp(in_color, "red") == 0) {
        my_color = red;
    } else {
        my_color = other;
    }

    printf("first >> %s: %d\n", in_color, my_color);
}

void second_kind(char* in_color) {
    enum colour {
        white = 1,
        black,
        blue,
        red,
        other
    } my_color;

    if (strcmp(in_color, "white") == 0) {
        my_color = white;
    } else if (strcmp(in_color, "black") == 0) {
        my_color = black;
    } else if (strcmp(in_color, "blue") == 0) {
        my_color = blue;
    } else if (strcmp(in_color, "red") == 0) {
        my_color = red;
    } else {
        my_color = other;
    }

    printf("second >> %s: %d\n", in_color, my_color);
}

void third_kind(char* in_color) {
    enum {
        white = 2,
        black = 4,
        blue = 8,
        red = 16,
        other = 32
    } my_color;

    if (strcmp(in_color, "white") == 0) {
        my_color = white;
    } else if (strcmp(in_color, "black") == 0) {
        my_color = black;
    } else if (strcmp(in_color, "blue") == 0) {
        my_color = blue;
    } else if (strcmp(in_color, "red") == 0) {
        my_color = red;
    } else {
        my_color = other;
    }

    printf("third >> %s: %d\n", in_color, my_color);

}

void fourth_kind(char* in_color) {
    typedef enum {
        white,
        black,
        blue,
        red,
        other
    } colour;

    colour my_color = white;

    if (strcmp(in_color, "white") == 0) {
        my_color = white;
    } else if (strcmp(in_color, "black") == 0) {
        my_color = black;
    } else if (strcmp(in_color, "blue") == 0) {
        my_color = blue;
    } else if (strcmp(in_color, "red") == 0) {
        my_color = red;
    } else {
        my_color = other;
    }

    printf("fourth >> %s: %d\n", in_color, my_color);

}

int main() {
    char in_color[16] = {0};

    printf("please input your like color: ");
    scanf("%s", in_color);

    first_kind(in_color);
    second_kind(in_color);
    third_kind(in_color);
    fourth_kind(in_color);

    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

道知极限编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值