/*************************************
编写一个函数,要求输入年月日时分秒,
输出该年月日时分秒的下一秒。
如输入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;
}
分享到:
相关推荐
标题中的任务是编写一个程序,该程序接收年月日时分秒作为输入,并输出紧接着的下一秒的时间。这个任务在编程中属于日期和时间处理的范畴,尤其适用于初学者了解和练习基本的日期时间操作。下面我们将深入探讨如何...
创建一个年月日时分秒的时间控件,我们需要设置以下关键配置项: 1. `format`: 这个配置项用于指定时间的显示格式,例如`'Y-m-d H:i:s'`表示年-月-日 时:分:秒。 2. `minValue`和`maxValue`: 分别设置时间选择的...
c语言 时间戳秒转化为年月日时分秒,不用库文件 绝对准确,好用方便快捷。
这段代码会输出类似“2023-02-28 12:00:00”的结果,这就是将毫秒数转换为年月日时分秒的表示。 在Java中,类似的转换可以使用`java.time.Instant`类和`java.time.format.DateTimeFormatter`类来完成。首先,用`...
"多功能数字钟1602显示温度年月日时分秒" 本资源是一个多功能数字钟,使用DS1602显示温度、年月日、时分秒,并具有可调日期、时间、星期及温度实时监测的功能。该数字钟还具有闹铃功能,可以根据用户的需求进行设置...
在现代网页开发中,实时性功能的实现越来越受到重视,其中“年月日时分秒的即时显示”便是一个常见且实用的需求。这一功能不仅应用于计时器、倒计时、实时更新的数据展示等场景,还广泛用于博客、新闻网站的时间戳,...
在JavaScript编程中,创建一个原生的日期控件,尤其是带有时分秒选择功能的,是常见的需求。这种控件通常用于用户输入日期和时间,比如在表单中。在这个场景下,`input`文本框结合原生JS可以实现一个自定义的日期...
《日历年月日时分秒控件myCalendar.js详解》 在前端开发中,日期选择器是一个常见的组件,它能够帮助用户方便地选取日期和时间。`myCalendar.js`是一款小巧而功能强大的JavaScript库,专为创建日历年月日时分秒控件...
本文将深入探讨“Android滚轮时间选择器”这一主题,特别是在标题和描述中提到的四种选择模式:年月日时分、年月日、时分以及月日时分。 首先,我们要理解Android滚轮时间选择器(WheelView)的基本工作原理。它是...
在本例中,我们定义了一个名为Date的结构体变量,其中包含三个成员变量:year、mouth和day,它们分别用于存储年、月和日的信息。 在程序中,我们使用switch语句来计算日期在一年中的天数。switch语句是一种选择结构...
这里使用了一个简单的循环来读取用户输入的10个整数,并将其存入数组`num`中。 #### 调用invert()函数 ```c invert(num, i); ``` 此行代码调用了之前定义的`invert()`函数,将数组`num`中的元素进行反转。传递给...
通过以上分析,我们可以看到,即使是一个看似简单的“输入年月日输出该年是这一年的第几天”的任务,也涉及到了日期计算、数据类型、函数设计、输入输出、流程控制等多个方面的IT知识。这对于学习编程尤其是C++语言...
### C语言代码:输入年月日计算天数 在C语言编程中,处理日期和时间相关的计算是一项常见的任务。本文将详细介绍如何通过一个简单的C语言程序来计算输入年份已经过去的天数。此程序首先接收用户输入的年、月、日,...
在C程序中,我们需要编写函数来初始化RTC,读取时间数据,处理数码管的段控制,以及处理用户输入的调节命令。 数码管显示是通过驱动芯片如74HC595或者直接通过微控制器的GPIO引脚来实现的。六个数码管分别显示年、...
`toLocaleString()` 方法返回一个表示该日期对象的字符串,该字符串是根据本地语言环境设置而格式化的。 ```javascript new Date().toLocaleString() ``` 此方法会自动根据用户的操作系统语言设置来确定日期和时间的...
创建一个包含年月日时分秒的日期控件,可以这样编写: ```javascript Ext.create('Ext.form.Panel', { title: '日期时间选择', width: 300, bodyPadding: 10, renderTo: Ext.getBody(), items: [{ xtype: '...
这个特定的应用程序设计包括几个关键的技术元素,如椭圆透明对话框、获取系统时间、对话框置顶以及显示详细的时间信息(年月日时分秒星期)。下面将详细解析这些知识点: 1. **椭圆透明对话框**: - 在GUI设计中,...
综上所述,创建一个自定义的Android时间选择器,可以选择年月日时分秒,是一项涉及布局设计、事件处理、数据管理等多个方面的任务。通过这样的自定义控件,可以为用户提供更加灵活和精确的时间选择体验,同时也展示...
每个下拉菜单的`change`事件都可以触发一个函数,该函数根据当前选择更新其他下拉菜单的可用选项。 最后,为了保存用户的选择,可以将日期和时间值转换为标准的ISO 8601格式(如`YYYY-MM-DDTHH:mm:ss`),或者...
"JS日期选择器带时分秒"是指一个能够显示并允许用户选择具体到秒的日期时间选择器。这样的功能在许多Web应用程序中非常实用,比如在线预订系统、日程安排或事件管理等。 在描述中提到的"这个特别好!推荐大家使用这...