输入日期判断是一年中的多少天
#include<stdio.h>
int main()
{int year,month,day,c,d,e,f,g;printf("please enter years\n");scanf("%d",&year);if(year%4==0&&year%100!=0||year%400==0)c=1;//闰年elsec=2;//平年printf("please enter month\n");scanf("%d",&month);if(c==1&&(1<=month&&month<=12))d=1;//闰年1-12月else if(c==2&&(1<=month&&month<=12))d=2;//平年1-12月else{printf("error");//如果输入错误的月份自动报错并结束return 0;}printf("please enter day\n");scanf("%d",&day);if ((d==1&&month==2))e=1;//闰年二月else if(d==1&&month!=2)e=2;//闰年非二月的月份else if ((d==2&&month==2))e=3;//平年二月else if(d==2&&month!=2)e=4;//平年非二月的月份if(e==2&&((month==1||month==3||month==5||month==7||month==8||month==12)&&(1<=day&&day<=31)))f=1;//闰年31日的月份else if(e==2&&((month==4||month==6||month==9||month==11)&&(1<=day&&day<=30)))f=2;//闰年30日的月份else if(e==1&&(1<=day&&day<=29))f=3;//闰年2月(29天)else if(e==4&&((month==1||month==3||month==5||month==7||month==8||month==12)&&(1<=day&&day<=31)))f=4;//平年31日的月份else if(e==4&&((month==4||month==6||month==9||month==11)&&(1<=day&&day<=30)))f=5;//平年30日的月份else if(e==3&&(1<=day&&day<=28))f=6;//平年2月(28天)else{printf("error");//如果不是按照各自月份输入日期就可以报错并结束return 0;}if(f==1||f==2||f==3)//闰年的三种情况
{ g=month;switch(g){ case 1:printf("%d",day);break;case 2:printf("%d",day+31);break;case 3:printf("%d",day+60);break;case 4:printf("%d",day+91);break;case 5:printf("%d",day+121);break;case 6:printf("%d",day+152);break;case 7:printf("%d",day+182);break;case 8:printf("%d",day+213);break;case 9:printf("%d",day+244);break;case 10:printf("%d",day+274);break;case 11:printf("%d",day+304);break;case 12:printf("%d",day+335);break; }
}if(f==4||f==5||f==6)//平年的三种情况
{g=month+12;switch(g){case 13:printf("%d",day);break;case 14:printf("%d",day+31);break;case 15:printf("%d",day+59);break;case 16:printf("%d",day+90);break;case 17:printf("%d",day+120);break;case 18:printf("%d",day+151);break;case 19:printf("%d",day+181);break;case 20:printf("%d",day+212);break;case 21:printf("%d",day+243);break;case 22:printf("%d",day+273);break;case 23:printf("%d",day+303);break;case 24:printf("%d",day+334);break; }}return 0;
}
在不利用数组的情况下,解决这个问题可以采用这个方法。只是写条件时可能没这么容易想到,因此需要花费许多时间来梳理逻辑上的顺序。
输入日期判断是一年中的多少天相关推荐
- 输入日期判断这一年的第几天
输入日期判断这一年的第几天.@TOC 先简单的分析它一波: 简单点来说就是从字符串中分离出年份,月份和日: 例如:输入的字符串事20211130,便可以先判断一下输入的字符串是不是八位的,然后前四位是 ...
- C++输入日期判断是周几
/* 输入日期判断是周几 */ #include <stdio.h> /* printf, scanf */ #include <time.h> /* time_t, stru ...
- java 一年中的第几天_输入日期判断是这一年的第几天(JAVA)
第一次写的时候是直接键盘录入三个整型数依次是年.月.日,然后直接计算是第几日,但是这样会导致实现判断输入数据是否合法有些繁琐.所以第二次直接使用了Date类来存输入的日期,这样就很好判断输入的日期是否 ...
- Python输入日期判断是这一年的第几天
利用python编程,根据输入的年月日判断这一天是这一年的第几天. import numpy as np years = input("请输入年份:") months = inpu ...
- html输入日期算出星座,C++输入日期 判断所属星座
目标:实现输入一个生日,判断属于哪一个星座.ios #include "stdafx.h" #include "iostream" #include " ...
- python输入日期判断星期几_python怎么判断是星期几
在 Python 的交互式解释器中先导入 time 模块,然后输入 [e for e in dir(time) if not e.startswith('_')] 命令,即可看到该模块所包含的 全部属 ...
- java输入日期判断这天是周几
int weekday(int year, int month, int day){Calendar cal = Calendar.getInstance();//月份要减一,在西方周日是一周的第1天 ...
- c++ 输入一个日期,计算出该日期是这一年中的第几天(switch语句)
c++ 日期计算 系统提示用户输入一个日期(年月日),随后根据用户提供的日期,利用switch语句,计算出该日期是这一年中的第几天.(注意闰年的判断,当日期在2月以后,天数应加一) (大一写的代码,算 ...
- 输入一个日期判断是当年的第几天(C语言)
题目 在控制台上输入年月日,判断该时间是当年的第几天 提示: 闰年年份分两种情况,第一种可以被4整除但不能被100整除,例如:1996年: 第二种可以被400整除,例如:2000年. 代码 #incl ...
最新文章
- [JavaWeb] SSM框架 部署运行第一个Demo
- 面试常考:Synchronized 有几种用法?
- Linux实时查看进程命令top笔记
- linux 正则查找email_Linux--正则表达式--详解
- Go Web编程--使用bcrpyt哈希用户密码
- UVa 401 - Palindromes
- 在线文本中插入符号工具
- 在控制台环境下调用MFC DLL崩溃的问题小结
- java 网页录音并上传_Java+FlashWavRecorder实现网页录音并上传
- entity cannot be tracked
- html怎么导入桌面上的图片,html怎么导入图片
- Python实训报告
- bp神经网络,多输入多输出,3层网络matlab程序
- 链接太长如何缩短?稳定的短链接api接口分享与用法实例
- DynamicViT
- C++ STL源码分析——一个万用的 hash function
- 电脑经常蓝屏是什么原因
- 第10课:scratchjr角色绘画
- 原来我们不懂百度seo排名和百度竞价
- 解决AndroidStudio 控制台编译输出中文乱码,黑方块+问号之类的