日历问题

/*在我们现在使用的日历中, 闰年被定义为能被4整除的年份,但是能被100整除而不能被400整除的年是例外,它们不是闰年。
例如:1700, 1800, 1900 和 2100 不是闰年,而 1600, 2000 和 2400是闰年。
给定公元2000年1月1日后的某年某月某日(包括2000年1月1日),你的任务:
(1)给出这一天从公元2000年1月1日开始逝去的天数,(2)判断这一天是当年的第几天。*/
#include<stdio.h>
int judgeyear(int a);
int main()
{
int b=365;
int c=366;
int year,month,day;
int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};计算月的天数,自己想出来的这个方法,感觉还可以,
int i,s=0;
int m=0;
scanf("%d%d%d",&year,&month,&day);
for(i=2000;i<year;i++)
{
if(judgeyear(i))
s+=b;
else
s+=c;
}//计算年的天数
for(i=0;i<month;i++)
{
if(judgeyear(i))
{
s+=a[i];
m+=a[i];
}
else
{
a[2]=29;
s+=a[i];
m+=a[i];
}
}
s+=day;
m+=day;
printf("%d %d",s,m);
return 0;
}
int judgeyear(int a)
{
int n=1;
if(a%4==0&&a%100!=0)
n=0;
return n;
}

程序还有一点小问题,例如输入2000 1 1 输出是1 1 应该是0 1 才对,求大神指点啊

时间: 2024-10-14 15:24:36

日历问题的相关文章

Android零基础入门第60节:日历视图CalendarView和定时器Chronometer

原文:Android零基础入门第60节:日历视图CalendarView和定时器Chronometer 上一期学习了AnalogClock.DigitalClock和TextClock时钟组件,本期继续来学习日历视图CalendarView和定时器Chronometer. 一.CalendarView 日历视图(CalendarView)可用于显示和选择日期,用户既可选择一个日期,也可通过触 摸来滚动日历.如果希望监控该组件的日期改变,则可调用CalendarView的 setOnDateCha

每天一个JS 小demo之日历制作。主要知识点:日期函数和对于函数封装的灵活运用

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> td { text-align: center; } </style></head> <body> <p> <select id="yearS

JavaScript插件:快速选择日期----jedate日历插件

jedate是一款轻量级JS库,可快速选择日期 http://www.sucaijiayuan.com/Js/DateTime/1371.html 使用方法: 下载jedate , 解压后不要改变文件夹内的目录结构,然后引入jedate.js文件, <input id="datepicker" placeholder="请选择时间" type="text" readonly/> var datepickerOptions = { da

Excel 日历控件的使用

http://www.excelpx.com/thread-255298-1-1.html Private Sub Calendar1_Click() With Calendar1 ActiveCell = .Value '赋值给激活单元格 .Visible = False '隐藏日历控件 End WithEnd Sub'Private Sub Worksheet_SelectionChange(ByVal Target As Range) With Calendar1 If Target.Co

android 日历

[1].[代码] [Java]代码 跳至 [1] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 //读取日历事件     public static void getCalendarInfo(Activity activity,String tag){    

【noip模拟题】日历游戏(博弈论+搜索)

直接搜索即可... 注意不要爆栈..所以我们可以分块搜索... 然后太懒且太弱我就不写了... orz hzwer [问题描述] moreD和moreD的宠物CD正在玩一个日历游戏,开始时,他们从1900年1月1日到2012年12月22日(你懂的……)选一个日期开始,依次按照如下规则之一向后跳日期: 1. 跳到日历上的下一天. 2. 跳到日历上的下个月的同一天(如果不存在,则不能这么做). 要是谁正好到达2012年12月22日那么他就赢了,如果到达这天之后的日期那他就输了——原因你也懂的. 每次

Essential WPF日历排程控件Essential Schedule for WPF

Essential Schedule for WPF是一款具有OutLook外观的WPF平台下的日历日程控件,利用该控件可以进行创建和管理约会和任务安排等.支持拖拉任务活动.调整大小.导入任务安排和导出日程安排等. 具体功能: 支持以天.周.一周工作时间.月为单位查看日程安排 支持时间间隔,使用户可以查看一天中的几个时间段 使用导航条进行时间导航 支持直接添加.编辑.删除日程活动 数据绑定功能允许你绑定到任何IEnumerable集合 控件提供了 Office14Black, Office14B

如何用C#完成控制台日历?

本题目的最终要就是根据用户输入的年和月在控制台输出单月的日历信息,附加范围年在1900-2100之间,月的范围在1-12之间,当用户输入不在范围时要给予错误信息提示:已知条件是1900年1月1日为星期一. 要输出此日历就需要知道该月的第一天是星期几,确定后才好根据天数推出后面的日期.其具体实现的代码如下: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.T

关于日历的问题,姑且是实现了日历的功能,但是在星期日下面那行总是在跳,明天问老师

package skt;import java.util.Scanner;import java.util.ArrayList;import java.util.List; public class skt{ public static void main (String[] args) { ArrayList<String> two =new ArrayList<String>(); System.out.print("请输入年份:"); Scanner ye

【实践】js实现windows系统日历

思路:1.定义好每一个月份的日期天数 2.获取当前的系统日期初始化数据 3.输出日历    2.1.先获取当前月的第一天是星期几(这一点与日历的排版至关重要!)    2.2.获取当前月的天数    2.3.获取当前月有多少个星期(即要输出多少行 行数这里我会预留多一行)    2.4.获取当前年份和月份 用作显示 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8