testdate.c

来自「unix环境下c语言屏幕编程开发」· C语言 代码 · 共 76 行

C
76
字号
#include "../inc/screen.h"/* *	检查日期是否正确 */testdate(ymd)struct	date	ymd;{	register int	tag,year,month,day;	tag = ymd.year / 100;	year = ymd.year;	month = ymd.month;	day = ymd.day;	if(day < 1)		return(FALSE);	if((tag != 0 && (tag < 19 || tag > 20)) || year < 70 || day == 0)		return(FALSE);		switch(month)	{		case 1: case 3: case 5: case 7:		case 8: case 10: case 12:						if(day > 31)				return(FALSE);			break;		case 4: case 6: case 9: case 11:			if(day > 30)				return(FALSE);			break;				case 2:			if(day > 29)				return(FALSE);			else if(day == 29 && year % 400 != 0 && (year % 4 != 0				|| year % 100 == 0))				return(FALSE);			break;		default:			return(FALSE);	}	return(TRUE);}testldate(ymd)long	ymd;{	struct	date	ymdx;	ymdx.year = (int)(ymd / 10000l);	ymdx.month = (int)((ymd % 10000l) / 100l);	ymdx.day = (int)(ymd % 100l);	return(testdate(ymdx));}testsdate(ymd)int	ymd;{	struct	date	ymdx;	ymdx.ymd = ymd;	xdate(&ymdx);	return(testdate(ymdx));}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?