c语言写的1900-未来某一年的日历

菜鸟第一次发帖。。好害怕<img alt="大哭" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/wail.gif" />
#include <stdio.h>
#include <windows.h>
int main()
{
	int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
	int i,j,num,q,year,day;
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_INTENSITY);
	printf("请输入1900年以后的年份:");
	while(scanf("%d",&year)!=EOF)
	{
		int mark=1;
		for(i=1900;i<year;i++)
		{
			if(i%4==0&&i%100!=0||i%400==0)
				day=366;
			else
				day=365;
			mark=(mark+day)%7;
		}
		if(year%4==0&&year%100!=0||year%400==0)
			a[2]=29;
		else
			a[2]=28;
	for(i=1;i<13;i++)
	{
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_BLUE|FOREGROUND_INTENSITY);
		{printf("****************%d月****************\n",i);}
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE|FOREGROUND_INTENSITY);
		{printf("日\t一\t二\t三\t四\t五\t六\n");}
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_INTENSITY);
		num=1;
		for(q=0;q<mark;q++)
			printf(" \t");
		for(q=mark;q<7;q++)
			printf("%d\t",num++);
		printf("\n");
		while(num<=a[i])
		{
			for(j=0;j<7;j++)
			{
				if(num<=a[i])
				printf("%d\t",num++),mark=(j+1)%7;
			}
			printf("\n");
		}
		printf("\n");
	}
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_INTENSITY);
	printf("                                                         ########by:苏苏########\n");
	}
	return 0;
}

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。