获得月份天数

简介: 获得月份天数

获得月份天数


题目:获得某年某月有多少天,编程实现。

可以多组输入年份和月份,计算这一年这个月有多少天。


思路:


众所周知,每四年就会有一个闰年。
在闰年这一年,二月份会多一天


判断闰年的两个方法:
1.能被400整除的年份
2.能被4整除但是不能被100整除的年份


一三五七八十腊 三十一天永不差;其余月份都是三十天(二月份除外)

代码实现如下


#include<stdio.h>
int main()
{
  int year = 0;
  int month = 0;
  int day = 0;
  int days[] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
  printf("请输入年份和月份\n");
  while (scanf("%d%d", &year, &month) != EOF)
  {
  day = days[month];
  if ((year % 400 == 0) || (year % 4 == 0) && (year % 100 != 0))
  {
    if (month == 2)
    {
    day++;
    }
  }
  printf("%d\n", day);
  }
  return 0;
}


2000年是千禧之年,同时也是闰年

所以2月份的天数也就是29。

今年(2022)的五月份也就是现在的月份,天数是31。


b895d3627d1772e57a5259e3ef30b688_65b3ce8975aa408b9b1e7fd347a56f96.png


这里需要注意的是


scanf()函数的返回值是获得的数值的个数
也就是说,从键盘上输入n个数字(或者字符)
函数就会返回值就是n
若scanf()函数没有获得数值,返回值便是-1
上面代码中,函数返回的便是2

目录
相关文章
|
编译器 API 定位技术
API和SDK的区别
API 和 SDK 的区别在于:API 是一组定义了软件组件之间交互规范的接口,用于实现不同软件组件之间的通信;而 SDK 是一个全面的工具集合,包含 API、编译器、调试器、文档等,用于特定平台的应用程序开发。SDK 范围更广,内容更丰富,更具体和具象化,适合复杂的开发需求;API 则更加抽象,侧重于功能的定义和调用方式。
|
前端开发
Bootstrap5 消息弹窗(Toasts)3
本示例展示了如何使用HTML和Bootstrap创建并显示多个消息弹窗。通过设置`.toast-container`类及相应的位置属性,可以轻松控制弹窗的布局与间距。每个弹窗包含标题、时间戳及关闭按钮,支持自定义内容显示。
lodash 的 _.isEqual 方法在处理循环引用时的表现如何?
【10月更文挑战第29天】lodash 的 `_.isEqual` 方法通过有效的引用记录和比较逻辑,能够很好地处理循环引用,为开发人员在处理复杂数据结构时提供了方便和可靠的工具。
|
数据可视化 安全 大数据
NIFI是什么工具?优点是什么?
【10月更文挑战第21天】NIFI是什么工具?优点是什么?
585 1
|
人工智能 自然语言处理 数据库
RAG 技术:让 AI 从 “书呆子” 变身 “开卷小天才”!
鳄叔介绍了RAG(检索增强生成)技术,这是一种让AI既能查资料又能灵活作答的方法,如同“开卷考试”的学霸。RAG结合了检索能力和生成能力,使AI能够实时获取最新信息,提供更专业、精准的回答,广泛应用于企业客服、法律咨询、医疗诊断和教育等领域。
313 0
|
缓存 Linux Shell
Docker资源(CPU/内存/磁盘IO/GPU)限制与分配指南
什么是cgroup? cgroups其名称源自控制组群(control groups)的简写,是Linux内核的一个功能,用来限制、控制与分离一个进程组(如CPU、内存、磁盘输入输出等)。 什么是Docker资源限制?
|
Java 编译器 开发者
java方法重载详细说明
Java方法重载允许在同一类中定义多个同名但参数列表不同的方法,通过参数数量、类型或顺序的不同来区分。这提高了代码的可读性和灵活性。例如,在一个类中可以定义多个`add`方法,分别处理不同数量和类型的参数。重载的关键不在于返回类型或访问修饰符,而在于参数列表的差异。合理使用方法重载可以简化程序设计,使代码更加高效。
329 5
|
智能硬件
Wi-Fi 与蓝牙:差异解析
【8月更文挑战第24天】
2815 0
|
前端开发 Java 程序员
Eolink神技之四、IDEA工具插件Eolink ApiKit
Eolink神技之四、IDEA工具插件Eolink ApiKit
468 0
|
XML Java 语音技术
Android App开发在线语音识别处理中实现中文转拼音(Pinyin4j库)功能(超详细 附源码和演示)
Android App开发在线语音识别处理中实现中文转拼音(Pinyin4j库)功能(超详细 附源码和演示)
500 0