C语言每日一题——第四天

第四天

小明这两天写代码有些累。。他差点忘记了9月30日的下一天是十月一日……于是决定写一个程序告诉他每个月有多少天。

执行:main.exe A

输出:

31

输入

程序通过命令行参数输入获取参数,参数仅有一个,代表月份。你无需理会错误输入。

为了方便输入,将数字统一移动64个,即 ASSCII 码表为 65 的符号(即A)代表数字1。

输出

当月长度,2月固定为平年长度,即28天。

关键

if 结构的用法,逻辑指令运用


解答

#include <stdio.h>
#include <iso646.h>


int main(int cnt, char **argv) {
    int month;
    
    if (cnt != 1) {
        // 数量不正确, 说明输入错误, 这时程序停止运行, 返回 -1
        printf("Input value error!\n");
        return -1;
    }
    
    // 获取用于计算的日期
    month = (int) (*argv[1]) - 64;
    
    if (month == 1 or month == 3 or month == 5 or month == 7 or month == 8 or month == 10 or month == 12) {
        printf("31\n");
    } else if (month == 2) {
        printf("28\n");
    } else {
        printf("30\n");
    }
    
    return 0;
}
posted @   风吹云动  阅读(115)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示