La Red de Conocimientos Pedagógicos - Currículum vitae - ¡Programación en lenguaje C! ¡Rogando por el código fuente!

¡Programación en lenguaje C! ¡Rogando por el código fuente!

#includelt;stdio.hgt;

#define lunes 1

#define martes 2

#define miércoles 3

#define jueves 4

#define viernes 5

#define sábado 6

#define domingo 0

#define días_de_enero 31

#define días_de_febrero 28

#define días_de_marzo 31

#define días_de_abril 30

#define días_de_mayo 31

#define días_junio 30

#define días_julio 31

#define días_agosto 31

#define días_septiembre 30

#define días_octubre 31

#definir días_noviembre 30

#definir días_diciembre 31

#definir primer1mes días_enero

#definir primer2mes días_enero días_febrero

#define primeros 3 meses días_enero días_febrero días_marzo

#define primeros4 meses días_enero días_febrero días_marzo días_abril

#define primeros5 meses días_enero días_febrero días_marzo días_abril días_mayo

#define primeros6 meses días_enero días_febrero Días_marzo Días_abril Días_mayo Días_junio

#define primeros 7 meses Días_enero Días_febrero Días_marzo Días_abril Días_mayo Días_junio \

Días_julio

#define primeros8 meses Días_enero Días_febrero Días_marzo Días_abril Días_mayo Días_junio \

Días_julio Días_agosto

#define primeros9 meses Días_enero Días_febrero Días_marzo Días_abril Días_mayo Días_junio \

Días_julio Días_agosto Septiembre

er_days

#define primeros 10 meses días_enero días_febrero días_marzo días_abril días_mayo días_junio \

días_julio días_agosto días_septiembre días_octubre

#define primeros11 días_mes_enero días_febrero días_marzo días_abril días_mayo días_junio \

Días_julio Días_agosto Días_septiembre Días_octubre Días_noviembre

int conocido_día_semana = martes;

int año_conocido = 1901;

int konwn_mes = 1;

int día_conocido = 1;

int día_count(int mes)

{

cambiar(mes)

{

caso 1: devuelve 0;

caso 2: devuelve el primer mes;

caso 3: devuelve el primer 2 mes; : devolver el primer 3 mes;

caso 5: devolver el primer 4 mes;

caso 6: devolver el primer 5 mes; ;

caso 8: devolver el primer 7 mes;

caso 9: devolver el primer 8 mes;

caso 10: devolver el primer 9 mes;

caso 11: devolver los primeros 10 meses;

caso 12: devolver los primeros 11 meses; *char * nombre_mes(int mes)

{

switch(mes)

{

caso 1:

devolver "enero";

descanso

caso 2:

devolver "febrero"; >

c

ejemplo 3:

devuelve "marzo";

descanso

caso 4:

devuelve "abril";

descanso;

caso 5:

devolver "mayo";

descanso

caso 6:

devolver "junio";

descanso

caso 7:

devolver "julio"

descanso

p> p>

caso 8:

devuelve "agosto";

descanso

caso 9:

devuelve " Septiembre" ;

descanso;

caso 10:

retorno "Octubre";

descanso;

caso 11:

devuelve "noviembre";

descanso

caso 12:

devuelve "diciembre";

romper;

predeterminado:

romper

}

}*/

char * nombre_mes( int mes)

{

cambiar(mes)

{

caso 1:

retorno "一 mes";

descanso

caso 2:

retorno "febrero"; p > caso 3:

devuelve "marzo";

descanso

caso 4:

devuelve "abril"; p>

descanso;

caso 5:

retorno "mayo";

descanso

caso 6:

p>

devolver "junio";

p>

descanso;

caso 7:

retorno "julio";

descanso

caso 8:

p>

devuelve "agosto";

descanso;

caso 9:

devuelve "septiembre";

caso 10:

devuelve "octubre";

descanso

caso 11:

devuelve "; Noviembre";

descanso;

caso 12:

retorno "Diciembre";

descanso ;

predeterminado:

descanso;

}

}

/*Imprimir un año determinado en un formato determinado Nombre del mes*/

void first_line_print(int mes, int año)

{

//printf("20s d \n", nombre_mes(mes), año

printf("8d año s \n", año, nombre_mes(mes));

}

/*Imprime el día de la semana según el formato. Nombre*/

voidweek_print()

{

//printf("-6s-6s-6s-6s-6s-6s-6s\n ", "Domingo.", "Lunes.", "Martes.", "Miércoles.", "Jueves.", "Viernes.", "Sábado.");

printf("-3s -3s-3s-3s-3s-3s-3s\n", "日", "一", "二", "三", "四", "五", "六");

}

/*Calcular el número de días entre el mes del año y el día conocido*/

int date_distance_count(int mes, int año)

{

int salto_año_count = 0;

int i;

int distancia

if (año gt; año_conocido)< / p>

{

for (i=año_conocido; ilt; año; i )

{

if(((i4 == 0) amplificador ;amp; (i100 != 0) ) || (i400 == 0))

{

salto_ye

ar_count;

}

}

si (mes gt; 2)

{

si(( (año4 == 0) amp; (año100 != 0) ) || (año400 == 0))

{

Leap_year_count

}

}

}

más

si (año == año_conocido)

{

if (mes gt; 2)

{

Leap_year_count = 1

}

}

distancia = (año - año_conocido)*365 año_salto_cuenta cuenta_día(mes);

distancia de retorno

}

/*Determina el primero de los mes El día de la semana*/

int makesure_firstday_weekday(int mes, int año)

{

int date_distance = 0

int día de la semana;

date_distance = date_distance_count(mes, año);

día de la semana = (conocido_weekday date_distance)7;

devolver día de la semana;

}

/*Imprimir los días del mes en secuencia*/

void print_in_turn(int mes, int primer día, int año)

{

int i = 1;

int día de la semana

cambiar(primer día)

{

caso sol; :

descanso;

caso Mon:

printf("-3s", ""); >

caso martes:

printf("-6s", "");

descanso

caso miércoles:

printf(" -9s", "");

descanso;

caso jueves:

p

rintf("-12s", "");

descanso;

caso viernes:

printf("-15s", ""); p>

p>

descanso;

caso Sat:

printf("-18s", "");

descanso; /p>

}

cambio(mes)

{

caso 1:

caso 3:

caso 5:

caso 7:

caso 8:

caso 10:

caso 12:

{

for(i=0; ilt; 31; i )

{

día de la semana = (primer día i)7

printf( "-3d",i 1);

if(día laborable == sábado)

{

printf("\n") ;

}

}

descanso

}

caso 2:

{

if(((año4 == 0) amp; amp; (año100 != 0) ) || (año400 == 0)) /*año bisiesto*/

{

for(i=0; ilt; 29; i )

{

día de la semana = (primer día i)7

> printf("-3d ",i 1);

if(día laborable == sábado)

{

printf("\n");

}

}

descanso

}

más /*平年*/

{

for(i=0; ilt; 28; i )

{

día de la semana = (primer día i)7

printf("-3d",i 1);

if(día laborable == sábado)

{

printf("\n");

}

p>

}

descanso

}

}

caso 4:

caso 6:

caso 9:

caso 11:

{

for(i=0; ilt; 30 ; i )

{

día de la semana = (primer día i)7 /*Calcular el día de la semana*/

printf("-3d", i 1);

if(weekday == Sat)

{

printf("\n"); línea*/

}

}

salto

}

}

}

void date_print(int mes, int año)

{

int primer día;

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

print_in_turn(mes, primer día, año);

printf("\n");

}

void main_month (int mes, int año)

{

first_line_print(mes, año

semana_print()

date_print(mes); , año);

printf("\n\n");

}

void main_calendar(int año)

{

int i;

fo

r(i=1; ilt;=12; i)

{

main_month(i, año);

}

}

int main()

{

int año;

printf("Ingrese el año: año = ");

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

printf("\n");

while(año lt; 1902)

{

printf("Ingrese un año mayor que 1901\n");

printf("Ingrese un año: año = "

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

printf("\n");

}

main_calendar(año);

scanf(" ");

devuelve 0;

}