/*************************************
编写一个函数,要求输入年月日时分秒,
输出该年月日时分秒的下一秒。
如输入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;
}
分享到:
相关推荐
然而,这将默认打印出星期、月份的英文缩写,我们可能希望输出格式更精确,比如按年月日时分秒。为此,我们可以自定义时间格式,使用`std::put_time`和`std::localtime`: ```cpp auto local_now = std::chrono::...
在现代网页开发中,实时性功能的实现越来越受到重视,其中“年月日时分秒的即时显示”便是一个常见且实用的需求。这一功能不仅应用于计时器、倒计时、实时更新的数据展示等场景,还广泛用于博客、新闻网站的时间戳,...
《日历年月日时分秒控件myCalendar.js详解》 在前端开发中,日期选择器是一个常见的组件,它能够帮助用户方便地选取日期和时间。`myCalendar.js`是一款小巧而功能强大的JavaScript库,专为创建日历年月日时分秒控件...
在JavaScript编程中,有时我们需要实时显示当前的时间,例如年月日时分秒。这个功能可以通过JavaScript的内置对象Date以及定时器setInterval来实现。本文将详细介绍如何使用JS编写一个每秒更新时间的实例。 首先,...
在C程序中,我们需要编写函数来初始化RTC,读取时间数据,处理数码管的段控制,以及处理用户输入的调节命令。 数码管显示是通过驱动芯片如74HC595或者直接通过微控制器的GPIO引脚来实现的。六个数码管分别显示年、...
编写自定义函数max,用来求三个数的最大值(要求:数据的输入、输出在主函数中实现)。
根据给定的文件信息,我们可以总结出一个关于Java编程中如何输入特定的年月日,并在控制台上打印出该月完整日历的关键知识点。这个知识点不仅涵盖了基础的用户输入处理,还包括了日期计算、闰年判断以及日历格式化...
在C语言中,计算任意给定日期对应的星期几是一个经典的编程问题,这通常涉及到日期处理和模运算。这个问题可以通过使用蔡勒(Zeller's)公式来解决,这是一个在计算机科学中广泛使用的算法。下面我们将深入探讨如何用...
这个特定的应用程序设计包括几个关键的技术元素,如椭圆透明对话框、获取系统时间、对话框置顶以及显示详细的时间信息(年月日时分秒星期)。下面将详细解析这些知识点: 1. **椭圆透明对话框**: - 在GUI设计中,...
综上所述,创建一个自定义的Android时间选择器,可以选择年月日时分秒,是一项涉及布局设计、事件处理、数据管理等多个方面的任务。通过这样的自定义控件,可以为用户提供更加灵活和精确的时间选择体验,同时也展示...
每个下拉菜单的`change`事件都可以触发一个函数,该函数根据当前选择更新其他下拉菜单的可用选项。 最后,为了保存用户的选择,可以将日期和时间值转换为标准的ISO 8601格式(如`YYYY-MM-DDTHH:mm:ss`),或者...
在这个"js 年月日时分 日历控件"中,开发者可能利用了HTML5的data属性来存储和传递额外的数据,比如日期和时间的选择精度。HTML5的data-*属性允许开发者自定义元素的数据,这在不引入额外的JavaScript库时尤其有用。...
在JavaScript编程中,控制用户输入的年月日是一项常见的需求,尤其在开发表单验证或者日期选择器时。本文将详细解析如何使用JavaScript实现这一功能,并结合提供的描述和标签,探讨一个自定义的函数以及一个额外的...
在Python编程中,有时我们需要处理时间相关的数据,例如将毫秒转换为更易读的时分秒格式。这个任务在处理服务器返回的数据时尤其常见,因为服务器可能以毫秒为单位提供时间戳。本篇文章将深入探讨如何实现这一转换,...
综上所述,创建一个原生JS日期控件带时分秒,主要涉及HTML布局、JavaScript事件处理和Date对象的使用。通过结合这些技术,我们可以构建出一个高效且用户友好的日期时间选择器,满足用户在文本框中选择完整日期时间的...
C语言编程-编写函数fun求1!+2!+3!+ …… +n!的和,在main函数中由键盘输入n值,并输出运算结果;请编写fun函数;例如:若n值为5,则结果为153;
本文将深入探讨如何在MFC(Microsoft Foundation Classes)环境下,利用C++编程语言实现时间系统的转换,包括从年月日世界时(UTC)获取儒略日、GPS时周数和秒数以及年积日(DOY)。 首先,我们要理解这些时间系统...
【问题描述】编写函数f,功能是用递归的方法求斐波那契数列的第n项,函数原型为 int f(int n),在主函数中输入一个正整数n,调用函数f求出斐波那契数列的第n项,并在主函数中输出。 斐波那契数列:1,1,2,3,5,8,13,...
已知一个链表中存储了若干名学生的信息,每名学生的信息包括:学号、英语成绩、数学成绩、计算机成绩。现编写一个函数search(),要求根据输入的学生学号,输出他的各科成绩。
设x为整数,输入x的值,请输出y相应的值(分段函数)。 2*x+6 (x>0) y= 0 (x=0) 2*x-6 (x) (提示:用if语句编写)