1、输入一个年、月、日并计算它是本年度第几天

2、输入任何一年份,给出该年出生人的属性,如1945年出生人的属性为“鸡”

3、显示输入2000-2099年的任何一年的某一月的月历,如下图

problem1

#include <iostream>
using namespace std;
int main()
{int year, month, day, num;bool runnian;    //是否为闰年标志位cout << "请输入一个年份:";cin >> year;cout << "请输入月份:";cin >> month;cout << "请输入日期:";cin >> day;if (year % 100 == 0){if (year % 400 == 0)runnian = true;elserunnian = false;}else{if (year % 4 == 0){runnian = true;}elserunnian = false;}switch (month){case 1:  num = day; break;case 2:  num = 31 + day; break;case 3:     num = 59 + day; break;case 4:  num = 90 + day; break;case 5:  num = 120 + day; break;case 6:  num = 151 + day; break;case 7:  num = 182 + day; break;case 8:  num = 212 + day; break;case 9:  num = 243 + day; break;case 10: num = 274 + day; break;case 11: num = 304 + day; break;case 12: num = 335 + day; break;default: break;}if (month >= 3){if (runnian == true)num++;}cout << "这是这一年的第" << num << "天";return 0;
}

problem 2

#include <iostream>
using namespace std;
int main()
{char p[12][4] = { "鼠","牛","虎","兔","龙","蛇","马","羊","鸡","猴","狗","猪" };int year0 = 2008;   //2008年是鼠年,作为基准int year, n;cout << "请输入一个年份";cin >> year;n = year - year0;n = n % 12;if (n < 0)n += 12;   //求余时,n可能是负数,如果是负数则加12 cout << year << "年的人属相为:" << p[n];return 0;
}

problem3

#include <iostream>
using namespace std;
int year, month, day, he;
int run[12] = { 31,29,31,30,31,30,31,31,30,31,30,31 };
int ping[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
//这点到基本点的求和
//判断闰年和平年
int leap(int year)
{int four, hundred, fourhundred;four = year % 4;hundred = year % 100;fourhundred = year % 400;if (four == 0 && hundred == 0 && fourhundred == 0)return 1;else if (four == 0 && hundred != 0 && fourhundred != 0)return 1;else return 0;
}
int qiuhe(int year, int month, int day, int run[], int ping[])
{//19000101 星期一int i, sum = 0;for (i = 1900; i < year; i++){int m;//用来标签是闰年还是平年  m==1,就是闰年m = leap(i);if (m == 1){sum = sum + 366;}else{sum = sum + 365;}}//加月份的天数for (i = 0; i < month - 1; i++){if (leap(year) == 1)sum = sum + run[i];elsesum = sum + ping[i];}return sum;
}void muban()
{char weekday[7][10] = { "星期一\t","星期二\t","星期三\t","星期四\t","星期五\t","星期六\t","星期天" };int i;for (i = 0; i < 7; i++)cout << weekday[i];cout << endl;
}void shibiePrint(int sum, int year, int month)
{int yushu, temp, i;yushu = sum % 7;//得到多余的天数,然后在后一个月份用空格表示出来for (i = 0; i < yushu; i++)cout << "\t";//输出空格temp = 7 - yushu;if (leap(year) == 1){for (i = 1; i <= run[month - 1]; i++)//打印31天{cout << i<< "\t";if (i == temp || (i - temp) % 7 == 0)cout << endl;}cout << endl;}else{for (i = 1; i <= ping[month - 1]; i++)//打印30天{cout << i << "\t";if (i == temp || (i - temp) % 7 == 0)cout << endl;}cout << endl;}
}int main()
{cout << "请输入一个年份";cin >> year;cout << "请输入月份";cin >> month;cout << "请输入日期";cin >> day;he = qiuhe(year, month, day, run, ping);//调用函数求和cout << "\t\t\t"<< year<<"年"<<month<<"月\n\n";muban();//调用模板函数,输出模板shibiePrint(he, year, month);//进行相应的识别,并输出return 0;
}

C++ 万年历、生肖判断、计算第几天相关推荐

  1. 基于51单片机的数字电子钟万年历闰年判断闹钟设计

    基于51单片机的数字电子钟万年历闰年判断闹钟设计 视频 1 开发环境 2 功能说明介绍 3 仿真图 4 程序 5 原理图 6 视频讲解 7 设计报告 7.1 设计目的 7.2 概述 8 资料清单下载链 ...

  2. php用script判断闰年,php判断/计算闰年的方法小结【三种方法】

    本文实例讲述了php判断/计算闰年的方法.分享给大家供大家参考,具体如下: 1.php闰年计算方法一: ①.普通年能被4整除而不能被100整除的为闰年.(如2004年就是闰年,1900年不是闰年) ② ...

  3. excel怎么设置自动计算_Excel工作计划完成记录表,自动进度提醒,判断计算快捷简单...

    Hello大家好,我是帮帮.今天跟大家分享一张Excel工作计划完成情况记录表,自动进度提醒,判断计算快捷简单. 为了让大家能更稳定的下载模板,我们又开通了全新下载方式(见文章末尾),以便大家可以轻松 ...

  4. 多目标跟踪中的目标是否静止判断——计算目标的速度

    此篇为第⑥篇,多目标跟踪系列文章: 基础demor入门①②:公式推导③④:深入分析初始化参数的影响⑤: ① Matlab Kalman滤波例子--小球跟踪解析 :matlab官方例子,单目标跟踪.匀速 ...

  5. 微信小程序中 在xwml 中使用外部引入的 js进行判断计算

    使用 场景 同一个页面展示两个数组,在js 中计算数组长度麻烦 可在wxml中进行操作 在wxml 中使用 (将其在wxml 文件中引入) <view class="item-info ...

  6. text html template判断,template-web中循环 判断 计算

    时间 分类 早餐 中餐 晚餐 {{each}} {{$value.sunday}} {{$value.recipe_date}} {{set BreakfastCount=$value.Breakfa ...

  7. 根据年份判断属相php,自动算出生肖属相的c程序编写程序,输入一个年份,判断该年属相.(提示switch-case......

    相关问题 #includeint main(){ int year; printf("请输入年份:"); scanf("%d",&year); year ...

  8. python打印万年历_python青苔计划(六)打印万年历

    青苔计划 /(ㄒoㄒ)/~~ 我这样的小白 万年历打完,感觉身体被掏空 请给我暖暖的拥抱 ╮(╯╰)╭ ----------正经的分割线---------- 任务要求 刚看到要打印万年历,我彻底懵逼了 ...

  9. python万年历实验报告_Python编程——万年历

    2017年五月份日历 万年历这个题目几乎是不论学哪种编程语言必要尝试的一个小知识,综合了循环,逻辑关系判断等各编程语言的基础知识.今天我们一起用Python实现简单的万年历功能(查看某年各个月份日历和 ...

  10. 如何在51单片机实现电子万年历

    如何在51单片机实现电子万年历 51单片机制作万年历的基本功能部分,软件特性可以在proteus上仿真,使用51单片机定时器T0做万年历计时信号源,电子万年历计时系统在timer模块,本模块主要是将年 ...

最新文章

  1. 基于Pytorch和RDKit建立QSAR模型
  2. 逻辑回归阈值_逻辑回归or线性回归,傻傻分不清楚
  3. windows server2008R2故障转移群集
  4. npm命令,开发依赖,版本号【正解】
  5. c#精彩编程200例百度云_永安市教育局被授予“人工智能编程教育试验区”
  6. iOS10 打开APP设置界面和WIFI界面
  7. 刘良华(1969-),男,宁波市智慧城市规划标准发展研究院研究室副主任.
  8. calendar获取月份少一个月_VBA 技巧:计算一个月有多少天?
  9. matlab 符号 推倒,【MATLAB】符号数学计算(四):符号表达式操作
  10. 200个化工网站批量爬取
  11. 保存界面cd的内容图片到本地
  12. 毕设项目系列教程-智慧校园管理系统
  13. 音视频转换常用基础术语全解
  14. php本地解密,PHPDecode 在线解密工具
  15. DAC904硬件电路
  16. vue cl3、vuex、vue-router、ant design vue、axios搭建一个简易的单页面应用
  17. 苹果手机怎么备份所有数据_手机数据丢失怎么办?三种备份神技,手机告别数据丢失...
  18. 爱奇艺qsv格式视频无损转换为MP4
  19. 生成扩散模型漫谈:统一扩散模型(应用篇)
  20. 打车网约车代驾APP软件主要功能及要解决的痛点

热门文章

  1. COS_头发渲染shader
  2. 中国最卷的公务员考试,挤满清北毕业生
  3. 使用JS将PDF文档转成图片,一页文档对应一张图片,并支持将图片批量导出!
  4. 现在卖什么赚钱?看看你适合哪种赚钱方式!
  5. 漫步数理统计三十四——顺序统计量
  6. Java实现PPT转化为PDF
  7. 微软开始彻底封杀IE浏览器
  8. 200个句子涵盖了高中英语4500词汇
  9. xp系统打开sql服务器不可用,xp系统安装sql2000个人版无反应
  10. Java开发人员2021年的职位描述和职责