/*************************************
编写一个函数,要求输入年月日时分秒,
输出该年月日时分秒的下一秒。
如输入2004年12月31日23时59分59秒,
则输出2005年1月1日0时0分0秒
**************************************/
#include <stdio.h>
#include <stdlib.h>
/* define function */
void InputData(void);
int LeapYear(int year);
void NextSec(void);
/* month[0];leap year month[1]; common year */
int Amonth[2][13]={
{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
};
int leap = 0;
int year, month, day, hour, minute, second;
/*
* Function Name: LeapYear()
* Describe: judge the current year is leap year or not
* Paramete: int year:current year
* Return Value: 1-leap year; 0-not
*/
int LeapYear(int year)
{
if ( (year%4 == 0) && (year%100 != 0) ||
(year%400 == 0) )
{
return 1;
}
else
{
return 0;
}
}
/*
* Function Name: InputData()
* Describe: input data
* Paramete: void
* Return Value: void
*/
void InputData(void)
{
printf("Input year(Press Enter to end input):");
if (scanf("%d", &year) != 1 || (year < 1000))
{
puts("Input year error");
getchar();
exit(0);
}
leap = LeapYear(year);
printf("Input month:");
if (scanf("%d", &month) != 1 || month<1 || month>12)
{
puts("Input month error!");
getchar();
exit(0);
}
printf("Input Day:");
if (scanf("%d", &day) != 1 || day<1 || day>Amonth[leap][month])
{
puts("Input day error!");
getchar();
exit(0);
}
printf("Input Hour:");
if (scanf("%d", &hour) != 1 || hour<0 || hour>59)
{
puts("Input hour error!");
getchar();
exit(0);
}
printf("Input Minute:");
if (scanf("%d", &minute) != 1 || minute<0 || minute>59)
{
puts("Input minute error!");
getchar();
exit(0);
}
printf("Input Second:");
if (scanf("%d", &second) != 1 || second<0 || second>59)
{
puts("Input second error!");
getchar();
exit(0);
}
}
/*
* Function Name: NextSec()
* Describle: Count the next second by the current time
* Paramete; void
* ReturnValue: void
*/
void NextSec(void)
{
if (++second == 60)
{
second = 0;
minute++;
}
if (minute == 60)
{
minute = 0;
hour++;
}
if (hour == 24)
{
hour = 0;
day++;
}
if (day == Amonth[leap][month]+1)
{
day = 1;
month++;
}
if (month == 13)
{
month = 1;
year++;
}
printf("The next second is %d-%d-%d %d:%d:%d\n\n",
year, month, day, hour, minute, second);
}
int main(void)
{
InputData();
NextSec();
system("PAUSE");
return 0;
}
分享到:
相关推荐
这段代码会输出类似“2023-02-28 12:00:00”的结果,这就是将毫秒数转换为年月日时分秒的表示。 在Java中,类似的转换可以使用`java.time.Instant`类和`java.time.format.DateTimeFormatter`类来完成。首先,用`...
在现代网页开发中,实时性功能的实现越来越受到重视,其中“年月日时分秒的即时显示”便是一个常见且实用的需求。这一功能不仅应用于计时器、倒计时、实时更新的数据展示等场景,还广泛用于博客、新闻网站的时间戳,...
"实用日期控件,可自动验证年月日时分秒"是一个专门为网页设计的JS框架,它提供了一种方便且用户友好的方式来处理日期和时间输入,同时具备自动验证功能,确保数据的准确性。 该控件的核心功能包括: 1. **自动...
在JavaScript编程中,创建一个原生的日期控件,尤其是带有时分秒选择功能的,是常见的需求。这种控件通常用于用户输入日期和时间,比如在表单中。在这个场景下,`input`文本框结合原生JS可以实现一个自定义的日期...
通过上述步骤,我们成功创建了一个存储过程`GETNOBYDATE`,该存储过程能够根据当前日期时间生成一个包含年月日时分秒的编号,并且该编号是14个字符长度。这种方法不仅提高了代码的可维护性和可读性,还增强了系统的...
《日历年月日时分秒控件myCalendar.js详解》 在前端开发中,日期选择器是一个常见的组件,它能够帮助用户方便地选取日期和时间。`myCalendar.js`是一款小巧而功能强大的JavaScript库,专为创建日历年月日时分秒控件...
#### 3.1 输入输出 - **输入**:使用`JOptionPane.showInputDialog`获取用户输入。 - **输出**:通过`System.out.println`输出日期的比较结果和调整后的日期。 ### 4. 其他注意事项 - 该程序通过自定义的`DateType...
本文将深入探讨如何利用JavaScript(简称JS)实现一个能够即时显示当前“年月日时分秒”以及“星期”的日期时间特效。 #### 核心知识点:JavaScript日期对象与DOM操作 1. **JavaScript日期对象**:JavaScript中的`...
本文将深入探讨“Android滚轮时间选择器”这一主题,特别是在标题和描述中提到的四种选择模式:年月日时分、年月日、时分以及月日时分。 首先,我们要理解Android滚轮时间选择器(WheelView)的基本工作原理。它是...
通过以上分析,我们可以看到,即使是一个看似简单的“输入年月日输出该年是这一年的第几天”的任务,也涉及到了日期计算、数据类型、函数设计、输入输出、流程控制等多个方面的IT知识。这对于学习编程尤其是C++语言...
### C语言代码:输入年月日计算天数 在C语言编程中,处理日期和时间相关的计算是一项常见的任务。本文将详细介绍如何通过一个简单的C语言程序来计算输入年份已经过去的天数。此程序首先接收用户输入的年、月、日,...
首先,我们来看一下如何获取当前的年月日时分秒。 1. 获取当前时间可以通过创建一个新的 Date 对象实例来实现: ```javascript var myDate = new Date(); ``` 2. 获取时间中的年月日时分秒,我们可以使用以下方法...
根据给定的文件信息,我们可以总结出一个关于Java编程中如何输入特定的年月日,并在控制台上打印出该月完整日历的关键知识点。这个知识点不仅涵盖了基础的用户输入处理,还包括了日期计算、闰年判断以及日历格式化...
在C语言中,计算任意给定日期对应的星期几是一个经典的编程问题,这通常涉及到日期处理和模运算。这个问题可以通过使用蔡勒(Zeller's)公式来解决,这是一个在计算机科学中广泛使用的算法。下面我们将深入探讨如何用...
在HTML页面中显示当前日期和时间,特别是包括年月日、时分秒以及星期几的信息,通常是通过JavaScript来实现的。下面将详细讲解这两种方法。 ### 方法一:动态实时更新 这种方法利用JavaScript的`setTimeout()`函数...
还有以下两个成员函数:一个用于初始化学生姓名、学号、性别和年龄的构造函数,一个用于输出学生信息的函数。编写一个主函数。声明一个学学生对象。然后调用成员函数在屏幕输出学生信息。 编程环境:vs2010,语言:...
本文将深入探讨如何在MFC(Microsoft Foundation Classes)环境下,利用C++编程语言实现时间系统的转换,包括从年月日世界时(UTC)获取儒略日、GPS时周数和秒数以及年积日(DOY)。 首先,我们要理解这些时间系统...
这个特定的项目,名为“android时间选择器,可进行农历阳历切换,带年月日时分”,是一个基于Android Studio的开发项目,旨在提供一个用户友好的时间选择界面,不仅支持公历(阳历)日期的选择,还支持农历日期的...
在MySQL数据库操作中,有时我们需要更新某个时间字段的年月日部分,但保留原有的时分秒信息。在本文中,我们将深入探讨如何实现这个需求,同时分析错误的写法及其原因。 首先,我们关注到一个具体的SQL更新语句示例...
该函数实现以下功能: ...输入日期年月日超出范围(如2004,11,32),输出‘无效输入日期’; 3.输入日期年月日均合法,但组合错误(主要指日错误如2011,2,29), 输出'日期组合错误'. 规定年为:1812年<=2012