La Red de Conocimientos Pedagógicos - Currículum vitae - Código de calendario perpetuo en lenguaje C

Código de calendario perpetuo en lenguaje C

Este programa tiene una función para consultar el día del año en el que se encuentra el día ingresado.

/* ¡Bienvenido a utilizar el sistema WanNianLi

Sun Hui!

*/

#includelt;stdio.hgt;

#includelt;stdlib.hgt;

#includelt;time.hgt ;

char* Month_str[]={"enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre" , "Octubre", "Noviembre", "Diciembre"};

char* semana[]={"Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes" ", "Sábado"};

int mon_day[]={31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; //Inicializa el número de días en cada mes

int bisiesto (int año)//Juzga el año bisiesto

{

if(year4==0&year100!=0 ||año400==0)

devuelve 1;

más devuelve 0;

}

int mes_día(int año, int mes) //Juzga cuántos días hay en este mes

{

if(salto(año)amp;amp;mes ==2 )

retorno 29;

else

return(mon_day[month-1]); }

int primer día( int año, int mes, int día) // Determine el día de la semana que es el primer día de este mes

{

int c=0

float s; int m;

for(m=1;mlt;mes;m)

c=c mes_día(año,m

p>c=c día;

s=año-1 (flotación)(año-1)/4 (flotación)(año-1)/100 (flotación)(año-1) /400-40 c;

return ((int)s7);

}

int printone(int a, int b) //Imprimir un calendario mensual

p>

{

printf(" -------------------------- -------- ----------------------------------------\n");

printf("日一二三四五六\n ");

int i, j=1, k=1;

if(a==7)

{

for(i=1;ilt;=b;i)

{

printf("4d",i);

if(i7==0)

{

printf("\n ");

}

}

}

si(a!=7)

{

while (jlt;=4*a)

{

printf(" ");

j;

}

for(i=1;ilt;=b;i)

{

printf("4d",i

if(i==7*k-a)

{

printf(" \n ");

k ; p> }

}

}

printf("\n");

devuelve 1; >}

int PrintAllYear(int año)/*Imprimir el calendario de un año*/

{

int a, b

int j=1, n=1, k;

printf("\n\n **************d calendario de pared del año**** * *********\n", año);

for(k=1;klt;=12;k)

{

j=1, n=1;

b=mes_día(año, k

a=primer día(año, k, 1); > printf("\n\n s\n", mes_str[k-1], k

printone(a, b

}

return 1;

}

char *shux(int ​​​​año) //Función para calcular el signo del zodíaco

{

carácter estático *sx[]={"Zi Rat", "Chou Niu", "Yin Tiger", "Mao Rabbit", "Chen Dragon", "Si Snake", "Wuma",

"Wei "Oveja", "Shen Mono", "Tú Pollo", "Xu Perro", "Xu Perro", "Hai Cerdo"

};

return(sx[ (año- 1204)12]);

}

int tianshu(int año, int mes, int día) //Calcular el día del año para un día determinado

{

int i,sum=0;

for(i=1;ilt;mes;i)

suma=sum mon_day [

i-1];

suma=suma día;

if((año4==0amp;amp;año100!=0 ||año400==0)amp;amp;mesgt ;2)

sum=sum 1;

printf( "\nEl año d, mes d y día ingresados ​​es el día d de este año\n ¿Quieres continuar? ¿Consulta? (Y/N)?", año, mes, día, suma);

return 1; }//****************** ************************************

int main()

{

int opción, da

char ch;

int año, mes, día

printf( "\ n************************************************ * *\n * Copyright @ 2005 Sun Hui ¡Todos los derechos reservados!");

printf(" *\n * *\n * Bienvenido al sistema de calendario perpetuo, ¡te deseo un buen humor! * \n *** ********************************************** ****\n" );

// Hora de llamada del sistema

time_t tval;

struct tm *now;

tval = time(NULL);

ahora = localtime(amp; tval);

printf("\n qq: 214467962\n\n Hora actual: 4d año d mes 02d día d: 02d: 02d\ n", ahora-gt; tm_año 1900, ahora-gt; tm_mon 1, ahora-gt; tm_mday, ahora-gt; tm_hora, ahora-gt; tm_min, ahora-gt; tm_sec);

//Fin de la llamada

int a, b;

b=mes_día(now-gt; tm_year 1900, now-gt; tm_mon 1); /p>

a= primer día (now-gt; tm_year 1900, now-gt; tm_mon 1, now-gt; tm_mday);

printone(a, b); calendario del mes

//*************************************** ******* **********************

>

while(1)

{

printf("\nSeleccione el servicio que necesita:\n"); nEntrada 1: Encuentra el día de la semana para una fecha determinada");

printf("\nEntrada 2: Determina si un determinado año es bisiesto");

printf ( "\nEntrada 3: Genera el calendario de un año determinado");

printf("\nEntrada 4: Determina tu signo del zodíaco"); : La fecha ingresada se puede calcular como el día del año");

printf("\nIngrese 6: Finalizar el programa\n");

scanf(" d" , amp; opción);

cambiar(opción)

{

caso 1:

while(1)

{

printf("\nIngrese el año, mes y día (XXXX, XX, XX) que desea consultar: ";

scanf(" d, d, d, c", año, mes, día);

da=primer día(año, mes, día);

printf(" \nd-d-d es s, do ¿Quieres continuar consultando? (Y/N)", año, mes, día, semana[da]);

fflush(stdin);

scanf("c", amp;ch);

if(ch=='N'||ch=='n')

descanso

}

break;

caso 2:

while(1)

{

printf ("\nIngrese el año ( XXXX) desea consultar");

scanf("d", amp; año);

if(salto(año))

printf( "\nd es un año bisiesto, ¿quieres continuar consultando? (S/N)", año

else

printf(" \nd No es un año bisiesto). año. ¿Aún quieres continuar con la consulta? (Y/N)?", año);

fflush(stdin);

scanf("c", amp; ch);

if( ch=='N'||ch=='n')

ruptura

}

ruptura

caso 3; :

while(1)

{

printf("\nIngrese el año calendario (XXXX) que desea imprimir");

scanf("d",&year);

PrintAllYear(year);

printf("\nD¿Quieres continuar imprimiendo el calendario (Y/N) ?"

fflush(estándar);

p> scanf("c",amp;ch);

if(ch=='N'||ch=='n')

descanso

}

romper;

caso 4:

while(1)

{

printf ("\nIngrese su año de nacimiento de cuatro dígitos:");

scanf("d", amp; año

printf("\n\nSu signo del zodíaco Sí); : s\n¿Quieres continuar consultando? (Y/N)?", shux(year));

fflush(stdin);

scanf("c" , amp ; ch);

si (ch=='N'||ch=='n')

romper

}

break;

caso 5:

while(1)

{

printf("\nPor favor, introduzca su año, mes y día a consultar (XXXX, XX, XX): ");

scanf("d, d, d", amp; año, amp; mes, amp; día);

tianshu(año, mes, día);

fflush(stdin);

scanf("c", amp; ch

); if(ch=='N'||ch=='n')

descanso;

}

caso 6:

p>

fflush(stdin);

printf("¿Está realmente seguro de que desea salir de este programa? (S/N)"); " , amp; ch);

if(ch=='Y'||ch=='y')

printf("********* *** ************************************************* **** *********\n");

printf("Gracias por su uso\n Si tiene algún comentario sobre este programa, no dude en contactarnos \n");

salir(0);

romper;

predeterminado:

printf("\nError: Lo siento, esta función aún no está disponible, elija del 1 al 6\n\n\n\n\n\n");

descanso;

}

}

devuelve 0;

}