zoukankan      html  css  js  c++  java
  • SDUT 简单枚举类型——植物与颜色

    Problem Description

    请定义具有red, orange, yellow, green, blue, violet六种颜色的枚举类型color,根据输入的颜色名称,输出以下六种植物花朵的颜色:
    Rose(red), Poppies(orange), Sunflower(yellow), Grass(green), Bluebells(blue), Violets(violet)。如果输入的颜色名称不在枚举类型color中,例如输入purple,请输出I don't know about the color purple.

    Input

    输入数据有多行,每行有一个字符串代表颜色名称,颜色名称最多30个字符,直到文件结束为止。
    Output

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

    Example Input

    blue
    yellow
    purple
    Example Output

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

    请用枚举类型实现。
    Author

    lxh

    代码区域

    #include <stdio.h>
    #include <string.h>
    enum color{red,orange,yellow,green,blue,violet,no}co;
    int main()
    {
        char tem[35];
        while(scanf("%s",tem)!=EOF)
        {
            if(strcmp(tem,"red")==0)
                co = red;
            else if(strcmp(tem,"orange")==0)
                co = orange;
            else if(strcmp(tem,"yellow")==0)
                co = yellow;
            else if(strcmp(tem,"green")==0)
                co = green;
            else if(strcmp(tem,"blue")==0)
                co = blue;
            else if(strcmp(tem,"violet")==0)
                co = violet;
            else
                co = no;
    
            switch(co)
            {
                case red:printf("Rose are red.
    ");break;
                case orange:printf("Poppies are orange.
    ");break;
                case yellow:printf("Sunflower are yellow.
    ");break;
                case green:printf("Grass are green.
    ");break;
                case blue:printf("Bluebells are blue.
    ");break;
                case violet:printf("Violets are violet.
    ");break;
                case no:printf("I don't know about the color %s.
    ",tem);break;
            }
    
        }
        return 0;
    }
    

    知识点:

    1. switch 用法
    2. 枚举的使用
  • 相关阅读:
    Codeforces Beta Round #6 (Div. 2 Only)
    Codeforces Beta Round #5
    Codeforces Beta Round #4 (Div. 2 Only)
    Codeforces Beta Round #3
    Codeforces Beta Round #2
    Codeforces Beta Round #1
    HDU 4020 Ads Proposal
    SRM 615 DIV1 500
    求1+2+……+n(位运算)
    好好加油!
  • 原文地址:https://www.cnblogs.com/lushans/p/6605756.html
Copyright © 2011-2022 走看看