Professional Documents
Culture Documents
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//Estructura que necesitamos
struct Meses {
int numero;
char nombre[11];
};
//Inicializamos la misma.
struct Meses mes[12] =
{ {
{
{
{
{
{
{
{
{
{
{
{
//Prototipo de las funciones.
void mostrar(char *cad);
void minusculas(char *s);
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
"Enero"
"Febrero"
"Marzo"
"Abril"
"Mayo"
"Junio"
"Julio"
"Agosto"
"Septiembre"
"Octubre"
"Noviembre"
"Diciembre"
},
},
},
},
},
},
},
},
},
},
},
} };
//Funcion principal.
int main(void)
{
//Variable para contener la cadena ingresada
char cad[11];
//Solicitamos el ingreso.
printf("Introduce un mes: ");
scanf("%10s",cad); // lee maximo 10 caracteres y le concatena el caracter c
ero.
//Convertimos a minuscula la cadena ingresada para comparar a posteriori
minusculas(cad);
//Llamamos a la funcion mostrar
mostrar(cad);
getchar();
}
//Mostrar la estructura y el numero del mes.
void mostrar(char *cad){
//Declaramos variables que necesitamos
int x;
int numero_de_mes=0;
//Para el nombre del mes que convertiremos a minuscula
char nombre_del_mes[11];
//Bucle para mostrar la estructura
for (x = 0; x < 12; x++){
//Mostramos cada elemento de la estructura
printf ("Numero %d es el mes %s\n", mes[x].numero, mes[x].nombre);
//en C comparar cadenas con == no es posible, entonces...
//Copiamos cada elemento a nuestro char
strcpy(nombre_del_mes, mes[x].nombre);
//Convertimos a minuscula para comparar insensiblemente
minusculas(nombre_del_mes);
//Si el parametro que recibe la funcion y el elemento actual de la estru