Saturday, March 29, 2014

C Program to print calender of a perticular month

C Program to print calender of a perticular month

Use microsoft visual Studio or Code::Blocks Ides to run this subject. In Turb C++ It faces some Problems

#include<stdio.h>
#include<conio.h>
int main()
{
enum day
{
mon,tue,wed,thu,fri,sat,sun
};
enum month
{
January,February,March,April,May,June,july,Augest,September,October,November,December
};
int m,y,i,re=0,nm,ny,nd;
long unsigned int sum;
//clrscr();
printf("Enter month & year (Ex.2 2000) \n");
scanf("%d%d",&m,&y);
printf("\t\t\t");
switch(m)
{
case 1:
printf("January");
break;
case 2:
printf("February");
break;
case 3:
printf("March");
break;
case 4:
printf("April");
break;
case 5:
printf("May");
break;
case 6:
printf("june");
break;
case 7:
printf("July");
break;
case 8:
printf("Augest");
break;
case 9:
printf("September");
break;
case 10:
printf("October");
break;
case 11:
printf("November");
break;
case 12:
printf("December");
}
printf(" %d\n\n",y);
printf("Mon\tTue\tWed\tThu\tFri\tSat\tSun\n");
ny=y-1900;
if(m==1||m==2)
nm=(m-1)*31;
if(m==3)
{
if(y%4!=0)
nm=31+28;
else
nm=31+29;
}
if (m==4)
{
if(y%4!=0)
nm=(m-1)*30;
else
nm=(m-1)*30+1;
}
if(m==5)
{
if(y%4!=0)
nm=(m-1)*30;
else
nm=(m-1)*30+1;
}



if (m==6)
{
if(y%4!=0)
nm=(m-1)*30+1;
else
nm=(m-1)*30+2;
}
if (m==7)
{
if(y%4!=0)
nm=(m-1)*30+1;
else
nm=(m-1)*30+2;
}
if(m==8)
{
if(y%4!=0)
nm=(m-1)*30+2;
else
nm=(m-1)*30+3;
}
if (m==9)
{
if(y%4!=0)
nm=(m-1)*30+3;
else
nm=(m-1)*30+4;
}
if (m==10)
{
if(y%4!=0)
nm=(m-1)*30+3;
else
nm=(m-1)*30+4;
}
if(m==11)
{
if(y%4!=0)
nm=(m-1)*30+4;
else
nm=(m-1)*30+5;
}
if (m==12)
{
if(y%4!=0)
nm=(m-1)*30+4;
else
nm=(m-1)*30+5;
}
nd=(y-1900)/4;
if(y%4==0 && y!=1900)
nd=nd-1;
sum=(ny*365)+nm+nd;
re=sum%7;
if (re==mon)
printf("\n");
if(re==tue)
printf("\n\t");
if(re==wed)
printf("\n\t\t");
if(re==thu)
printf("\n\t\t\t");
if(re==fri)
printf("\n\t\t\t\t");
if(re==sat)
printf("\n\t\t\t\t\t");
if(re==sun)
printf("\n\t\t\t\t\t\t");
for (i=1;i<=31;i++)
{
printf("%d\t",i);
if(m==4||m==6||m==9||m==11)
{
if(i==30)
break;
}
if(m==2)
{
if(i==28 && y%4!=0)
break;
else if (i==29)
break;
}
if(re==mon)
{
if(i==7||i==14||i==21||i==28)
printf("\n");
}
if(re==tue)
{
if(i==6||i==13||i==20||i==27)
printf("\n");
}
if(re==wed)
{
if(i==5||i==12||i==19||i==26)
printf("\n");
}
if(re==thu)
{
if(i==4||i==11||i==18||i==25)
printf("\n");
}
if(re==fri)
{
if(i==3||i==10||i==17||i==24||i==31)
printf("\n");
}
if(re==sat)
{
if(i==2||i==9||i==16||i==23||i==30)
printf("\n");
}
if(re==sun)
{
if(i==1||i==8||i==15||i==22||i==29)
printf("\n");
}
}
getch();
return 0;
}

No comments:

Post a Comment