XDOJ-车牌限行_分支结构-7

19 篇文章 42 订阅
19 篇文章 24 订阅

来源:

西电XDOJ在线C语言编程练习题7

问题描述:

受雾霾天气影响,某市决定当雾霾指数超过设定值时对车辆进行限行,假设车牌号全为数字,且长度不超过6位,限行规则如下: 
(1)限行时间段只包括周一至周五,周六周日不限行; 
(2)如果雾霾指数低于200,不限行; 
(3)如果雾霾指数大于等于200且低于400,每天限行两个尾号的汽车,周一限行1和6,周二限行2和7,周三限行3和8,周四限行4和9,周五限行5和0; 
(4)如果雾霾指数大于等于400,每天限行五个尾号的汽车,周一、周三和周五限行1,3,5,7,9,周二和周四限行0,2,4,6,8。 

现在给出星期几、雾霾指数和车牌号,判断该车牌号是否限行。

输出说明:

输入说明
输入分为三个整数,第一个整数表示星期几(1~7,1表示周一,2表示周二,依次类推,7表示周日),
第二个整数表示雾霾指数(0~600),第三个整数表示车牌号,整数之间用空格分隔。

输出说明
输出为两个部分,第一部分为车牌最后一位数字,第二部分为限行情况,限行输出yes,不限行输出no。

解题思路:

简单的if语句的嵌套

代码实现:

#include<stdio.h>
int main(){
    int a,b,c;      //a为星期几,b为污染指数,c为车牌号
    int d,e=0;      //d记录车牌号最后一位,e作为输出yes或no的判断
    scanf("%d %d %d",&a,&b,&c);
    d = c %10;      //获取车牌号最后一位
    if (b <= 200)
    {
        e = 1;
    }else if (b <= 400)
    {
        if (a==1)
        {
            if (d!=1&&d!=6)
            {
                e = 1;
            }
        }else if (a==2)
        {
            if (d!=2&&d!=7)
            {
                e = 1;
            }
        }else if (a==3)
        {
            if (d!=3&&d!=8)
            {
                e = 1;
            }
        }else if (a==4)
        {
            if (d!=4&&d!=9)
            {
                e = 1;
            }
        }else if (a==5)
        {
            if (d!=5&&d!=0)
            {
                e = 1;
            }
        }else{e=1;}
    }else if(b<=600){
        if (a==1||a==3||a==5)
        {
            if (d!=1&&d!=3&&d!=5&&d!=7&&d!=9)
            {
                e = 1;
            }
        }else if (a==2||a==4)
        {
            if (d!=0&&d!=2&&d!=4&&d!=6&&d!=8)
            {
                e = 1;
            }
        }else{e=1;}
    }
    if (e==1)
    {
        printf("%d no",d);
    }else{
        printf("%d yes",d);
    }
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值