7-10 sdut-C语言实验-简单枚举类型——植物与颜色

简介: 7-10 sdut-C语言实验-简单枚举类型——植物与颜色

枚举类型color,根据输入的颜色名称,输出以下六种植物花朵的颜色:

Rose(red), Poppies(orange), Sunflower(yellow), Grass(green), Bluebells(blue), Violets(violet)。如果输入的颜色名称不在枚举类型color中,例如输入purple,请输出I don't know about the color purple.

输入格式:

第一行输入一个n, 代表有n 组询问。( 1 <= n <= 10)

接下来的n行, 每行有一个字符串代表颜色名称,颜色名称最多30个字符。

输出格式:

输出n 行。

每行输出对应颜色的植物名称。

例如:Bluebells are blue. 如果输入的颜色名称不在枚举类型color中,例如purple, 请输出I don't know about the color purple.

输入样例:

3
blue
yellow
purple

输出样例:

Bluebells are blue.
Sunflower are yellow.
I don't know about the color purple.

提示:

请用枚举类型实现

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

#include <stdio.h>
#include <string.h>
 
// 定义颜色枚举类型
enum color {
    red,
    orange,
    yellow,
    green,
    blue,
    violet,
    no
}w;
 
// 主函数
int main() {
    // 初始化字符数组用于存储颜色名称
    char a[11][31], c[31];
    int n, i;
    
    // 读取颜色数量
    scanf("%d", &n);
    
    // 读取颜色名称并存储在数组中
    for (i = 1; i <= n; i++) {
        scanf("%s", a[i]);
    }
    
    // 遍历颜色数组,判断并打印对应的颜色信息
    for (i = 1; i <= n; i++) {
        if (strcmp(a[i], "red") == 0) {
            w = red;
        } else if (strcmp(a[i], "orange") == 0) {
            w = orange;
        } else if (strcmp(a[i], "yellow") == 0) {
            w = yellow;
        } else if (strcmp(a[i], "green") == 0) {
            w = green;
        } else if (strcmp(a[i], "blue") == 0) {
            w = blue;
        } else if (strcmp(a[i], "violet") == 0) {
            w = violet;
        } else {
            w = no;
            strcpy(c, a[i]);
        }
        
        // 根据颜色枚举值打印对应的颜色信息
        switch (w) {
            case red:
                printf("Rose are red.\n");
                break;
            case orange:
                printf("Poppies are orange.\n");
                break;
            case yellow:
                printf("Sunflower are yellow.\n");
                break;
            case green:
                printf("Grass are green.\n");
                break;
            case blue:
                printf("Bluebells are blue.\n");
                break;
            case violet:
                printf("Violets are violet.\n");
                break;
            case no:
                printf("I don't know about the color %s.\n", c);
                break;
        }
    }
    
    return 0;
}


目录
相关文章
|
uml
IDEA使用插件绘制UML类图+PlantUML语法讲解
IDEA使用插件绘制UML类图+PlantUML语法讲解
1738 0
|
10月前
|
自然语言处理 数据库 iOS开发
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
710 12
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
|
11月前
|
人工智能 运维 Serverless
0 代码!2 种方式,一键部署 DeepSeek 系列模型
DeepSeek 凭借其卓越的性能和广泛的应用场景,迅速在全球范围内获得了极高的关注度和广泛的用户基础。DeepSeek-R1-Distill 是使用 DeepSeek-R1 生成的样本对开源模型进行蒸馏得到的小模型,拥有更小参数规模,推理成本更低,基准测试同样表现出色。依托于函数计算 FC 算力,Serverless+ AI 开发平台 CAP 现已提供模型服务、应用模版两种部署方式辅助您部署 DeepSeek R1 系列模型。完成模型部署后,您即可与模型进行对话体验;或以 API 形式进行调用,接入 AI 应用中。欢迎您立即体验。
931 13
sdut 链表6-------7-6 sdut-C语言实验-有序链表的归并
sdut 链表6-------7-6 sdut-C语言实验-有序链表的归并
133 0
7-5 sdut-C语言实验-最长公共子序列
7-5 sdut-C语言实验-最长公共子序列
286 0
7-4 sdut-C 语言实验-排队接水问题
7-4 sdut-C 语言实验-排队接水问题
164 0
|
开发工具 git
7-4 sdut-C语言实验-最长公共子序列
7-4 sdut-C语言实验-最长公共子序列
261 1
|
关系型数据库 MySQL 数据库
navicat 查看,设计并导出数据库 ER图
navicat 查看,设计并导出数据库 ER图
3119 5
7-8 sdut-C语言实验-取数字问题
7-8 sdut-C语言实验-取数字问题
157 2
Matlab 2022a 安装教程 附安装包
Matlab 2022a 安装教程 附安装包
4559 1
Matlab 2022a 安装教程 附安装包

热门文章

最新文章