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;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)