Escribir un calendario perpetuo en lenguaje c
#Incluir "iomanip.h"
#Incluir "stdlib.h"
Año bisiesto(int a)/*Este año ¿Es un año bisiesto?*/
{
if((a 4 = = 0 amp; ampa100!= 0)| )
Return ( 1);
De lo contrario, devuelve (0);
}
int aa[12]={31, 28, 31, 30, 31, 30, 31, 30, 31, 30, 31};
int cc[12]={31, 29, 31, 30, 31, 30, 31, 30, 31, 30, 31}; p>
Char bb[8][8]={ "Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado" };
ww(int a, int b, int c)
{
int n=0, m=0, I, j , k = 0;
for(I = 1;iltc;i)
{
if(año bisiesto(i)==1)
p>m = m 366;
else m = m 365;
}
for(j = 1; j ltb; j )
{ if(año bisiesto (c)= = 1)k = k cc[j-1];
else k = k aa[j-1];
}
n = (m k a) 7;
Devuelve n;
}
Mes no válido (entero) p>
{
cout lt lt"El número máximo de días es:";
Si (m==2)
cout lt ltaa[m- 1] 1;
else cout lt ltaa[m-1] lt; ltendl
}
Void nianfen(int n)/*Imprimir el calendario del año*/
{
int i, j, k
if(año bisiesto(n)==1)
{
for( j = 1; j lt=12; j )
{
cout lt ltj;
cout lt lt" Mes"
cout lt lt"día"< lt"一"
for(I = 0; i ltww(1, j, n); i)
{
cout lt ltsetw(4) lt; lt"";
}
for(k = 1; k lt= cc[j- 1];k)
{
cout lt ltsetw(4) ltk;
if((ww(1,j,n) k) 7==0)
cout lt ltendl
}
cout lt ltendl
}
}
Otros p>
{
for(j = 1; j lt=12; j )
{
cout lt ltj;
< pag>cout lt lt"mes"
cout lt ltww(1,j,n) lt; ltendl
cout lt ltendl lt lt"día"< lt"uno"
for(I = 0; i ltww(1,j,n);i)
{
cout lt ltsetw(4) lt"";
}
for(k = 1; k lt= aa[j-1]; k )
{
cout lt ltsetw (4) lt; ltk;
if((ww(1,j,n) k)7==0)
cout lt ltendl
}
cout lt ltendl
}
}
}
Void nianyue(int n, int y) /*Imprimir el calendario del año y mes*/
{
int i, k;
if(año bisiesto(n)==1)
{
cout lt lt"天"< lt"一"
for(I = 0;iltww(1,y,n);i)
{
cout ltsetw(4) lt""
}
for(k = 1; k lt = cc[y-1];k)
{
cout lt ltsetw(4) lt; ltk;
if((ww(1,y , n) k)7==0)
cout lt ltendl
}
cout lt ltendl
}
Otro
{ cout lt ltendl lt lt"天"< lt"一"
for(I = 0;i ltww(1,y,n);i)
{
cout ltsetw(4) lt""
}
for(k = 1; k lt = aa[y-1];k)
{
cout lt ltsetw(4) lt; ltk;
if((ww(1,y , n) k)7==0)
cout lt ltendl
}
cout lt ltendl
}
}
void main()
{
int n, m;
int día, mes, año < / p>
mientras(1)
{
cout lt lt"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *: " lt; ltendl
cout lt lt" 1Consulta el día de la semana" < ltendl
lt lt "¿Es 2 un año bisiesto?" < lt Endel
lt lt" 3 Consultar el número máximo de días en un mes"
lt lt "4 Imprimir el calendario de un determinado año"
lt lt"5Imprimir el calendario mensual de un determinado año y mes"
l
t lt" 6salir " lt ltEndel
lt lt"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *: " lt; ltendl
cout lt lt" Ingrese el comando a operar: "
CIN gt; gtn;
Cambiar (n)
{
Caso 1: cout lt;Ingrese la fecha a consultar: ";
cout lt lt " Año: ";
CIN gt; gtAño;
cout lt ltendl lt lt"Mes: ";
CIN gtMes;
cout lt ltendl lt lt"Día:";
CIN gt; gtDía;
cout lt lt"Semana:";
cout lt ltbb [ww (día, mes, año)] lt; ltendl break;
switch (ww (día, mes, año))
{
Caso 1 : cout lt;lt "Lunes";Pausa;
Caso 2: cout lt;lt"Martes";Pausa;
Caso 3: cout lt"Miércoles "Pausa; p>
Caso 4: cout lt; lt "jueves";
Caso 5: cout lt "viernes"; ; lt "sábado"; descanso;
Caso 7: cout lt "domingo";
}
cout lt ltendl descansos;
}
p>
Caso 2: cout lt; lt"Ingrese el año a consultar:";
CIN gt; gtm;
if(año bisiesto( m)= = 1)cout lt; "Este año es bisiesto"
else cout lt lt"No es un año bisiesto, regrese y vuelva a ingresar"< ltendl
Descanso;
Caso 3: cout lt lt"Ingrese el mes:";
CIN gt; gtm;
Mes minuto (m);
Caso 4: cout <
Caso 5: cout lt;"Ingrese el año:";
CIN gtn;
cout lt ltendl lt lt"Ingrese el mes:";
CIN gt;
cout lt ltendl
Nianyue (n, m);
Caso 6: Salir (0) ;
}
}
}