栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C 练习实例4

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C 练习实例4

题目:输入某年某月某日,判断这一天是这一年的第几天?

程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。

程序代码:

#include
using namespace std;

//思路:
// 1、对输入的年月进行判断
// 2、如果月份是1,则天数 = 0+日数
//    如果月份是2,则天数 = 31+日数
//往下以此类推……
//3、当月数大于2时,判断是否为闰年,是闰年则总天数加一。
//4、输出总天数

bool isLeap(int year)
{
	if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0) return true;
	return false;
}

int main()
{
	int y, m, d, sum;
	cin >> y >> m >> d;
	switch (m)
	{
	case 1:sum = 0; break;
	case 2:sum = 31; break;
	case 3:sum = 59; break;//默认是平年
	case 4:sum = 90; break;
	case 5:sum = 120; break;
	case 6:sum = 151; break;
	case 7:sum = 181; break;
	case 8:sum = 212; break;
	case 9:sum = 243; break;
	case 10:sum = 273; break;
	case 11:sum = 304; break;
	case 12:sum = 334; break;
	}
	if (isLeap && m > 2)
		cout << sum + d << endl;
	else 
	{
		cout << sum + d << endl;
	}
	return 0;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/588181.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号