Está en la página 1de 16

Arreglos

EJERCICIOS:
1.- un programa que pida al usuario 4 nmeros, los memorice (utilizando una
tabla), calcular su media aritmtica y despus muestre en pantalla la media y los
datos tecleados.
cdigo:

#include<conio.h>
#include<stdio.h>
#include<string.h>
main()
{
int n[4];
float sum=0;
for (int i=0; i<=3; i++)
{
printf("ingrese un numero\n");
scanf("%d",&n[i]);
sum=sum+n[i];
}

printf("\nla media es:\t%0.1f",sum/4);


printf("\nlos numeros ingresados son:\t%d %d %d %d",n[0],n[1],n[2],n[3]);
getch();

2.- un programa que pida 5 nmeros reales y luego los muestres en orden
contrario al que se introdujeron

cdigo:

#include<conio.h>
#include<stdio.h>
#include<string.h>
main()
{
float n[5];
for (int i=0; i<=4; i++)
{
printf("ingrese un nuemro\n");
scanf("%f",&n[i]);
}
printf("\n");
for (int i=4;i>=0;i--)
{
printf("%0.0f\t",n[i]);
}
getch();

3.- un programa que almacene en una tabla el numero de das que tiene cada
mes, pida al usuario que le indique un mes (1=enero, 12=diciembre) y muestre
en pantalla el numero de das que tiene ese mes.

cdigo:

#include<stdio.h>
#include<conio.h>
main()
{
int nm,mes[12];
for (int i=0; i<=11; i++)
{
printf("ingrese el total de dias del mes %d ",i+1);
scanf("%d",&mes[i]);
}
printf("\ningeres el mes que desea saber cuantos sias tiene\t");
scanf("%d",&nm);
printf("\nel mes tiene: %d dias",mes[nm]);
getch();

4.- un programa que te pida tu nombre y lo muestre en pantalla al revs.

codigo:

#include<conio.h>
#include<stdio.h>
#include<string.h>
main()
{
char n1[40],n2[40];
printf("ingrese un texto ");
gets(n1);
strrev(n1); /* con est funcion podemos imprimir un texto al revs */
printf("la cadena es: %s",n1);
getch();
}

5.- lo mismo que el 4, pero ahora imprimirlo separado.

cdigo:

#include<stdio.h>
#include<string.h>
#include<conio.h>
main()
{
int i,n;
char nom[20];
printf("ingresa tu nombre ");
scanf("%s",nom);
n=strlen(nom);/*para no trabajar con los 20 si no los usamos podriamos contar
cuantoas letras contienen nuestra nom*/
for (i=0;i<n;i++)
{
printf("%c\t",nom[i]);
}
getch();
}

6.- un programa que te pida una frase y la muestre en pantalla sin espacios .

cdigo:

#include<conio.h>
#include<stdio.h>
#include<string.h>
main()
{
int x,i;
char ho[20];
printf("\ningrese un texto ");
gets(ho);
x=strlen(ho);
for (i=0; i<=x; i++)
{
if (ho[i]==' ')
{
i++;
}
printf("%c",ho[i]);
}
getch();

7.- realizar un programa que dado 20 numeros diferentes, se introduzcan en un


arreglo y determine cual es el mayor y cual el menor, los imprima.

codigo:

#include<stdio.h>
#include<conio.h>
#include<iostream>
main()
{
int vector[5];
int menor=vector[0];
int mayor=vector[1];
for (int i=0; i<=4; i++)
{
printf("ingrese un numeros para la memoria %d ",i+1);
scanf("%d",&vector[i]);
if (vector[i]>mayor)
{
mayor=vector[i];
}
if (vector[i]<menor)
{
menor=vector[i];
}
}
printf("\nel mayor es: %d",mayor);
printf("\nel menor es: %d",menor);
getch();

8.- lo mismo que el problema 7, pero en este caso sacando los positivos, nulos y
negativo.

codiigo:

#include<stdio.h>
#include<conio.h>
main()
{
int num[20];
int p=0,n=0,nu=0;
for (int i=0; i<=19; i++)
{
printf("ingrese valor No. %d ",i+1);
scanf("%d",&num[i]);
if (num[i]>0)
{
p++;
}
if (num[i]<0)
{
n++;
}
if (num[i]==0)
{
nu++;
}
}
printf("\ncant. de positivos: %d",p);
printf("\ncant. de negativos: %d",n);
printf("\ncant. de nulos: %d",nu);

9.- dados los datos de 5 trabajadores como son;


nombre, antigedad, ao de nacimiento y sueldo. agregarlos a un arreglo,
calcular de cada trabajador el sueldo aumentado el 5% por cada ao trabajado,
la edad y imprimirlos de esta manera;
nombre edad sueldo aumentado
adrian 10 13250
javier 15 1520
jos 25 650
etc.. etc.. etc..
cdigo:

#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<iostream>
main()
{
char nombre[5][20];
int edad[5],anio[5],antiguedad[5],sueldo[5],suel_aum[5];
for (int i=0; i<=4; i++)
{
printf("ingrese el nombre del tarbajador %d ",i+1);
scanf("%s",nombre[i]);
printf("\ningrese la antiguedad del trabajador %d ",i+1);
scanf("%d",&antiguedad[i]);
printf("\ningrese el ao de nacimiento del trabajador %d ",i+1);
scanf("%d",&anio[i]);
printf("\ningrese el sueldo del trabajador: %d ",i+1);
scanf("%d",&sueldo[i]);
}
printf("\n");
printf("nombre edad sueldo aumentado\n");
for (int i=0; i<=4; i++)
{
printf("\n%s\n",nombre[i]);
edad[i]=2013-anio[i];
printf("\t%d\t",edad[i]);
suel_aum[i]=((5*antiguedad[i])*sueldo[i]/100)+sueldo[i];
printf("\t%d\t",suel_aum[i]);
}
getch();

10.- casi lo mismo del problema 9, solo que en est, las variables se inicializan
en un arreglo, se saca el promedio, nombre, y el estado( reprobado,
actualizado);
cdigo:
#include<conio.h>
#include<stdio.h>
#include<string.h>
main()
{
int c1=0,c2=0,c3=0,c4=0,c5=0,sum=0,i;
char n1[40]="Diana Acebedo Gonzales";
char n2[40]="Lilia Mercedez Porras";
char n3[40]="Saul Renato Aragon";
char n4[40]="MIchel Balcazar Zurita";
char n5[40]="Itzel Domonguesz Salasar";
int cal1[7]={6,6,8,9,10,5,6};
int cal2[7]={3,5,6,7,6,7,8};
int cal3[7]={1,2,3,4,5,6,7};
int cal4[7]={7,8,9,4,5,6,7};
int cal5[7]={10,9,7,8,9,10,8};
float prom[5];
for (i=0;i<=6;i++)
{
c1=c1+cal1[i];
c2=c2+cal2[i];
c3=c3+cal3[i];
c4=c4+cal4[i];
c5=c5+cal5[i];
}
prom[0]=c1/7;
prom[1]=c2/7;
prom[2]=c3/7;
prom[3]=c4/7;
prom[4]=c5/7;
printf("NOMBRE\t\t\tPROMEDIO\t\tSITUACION");
printf("\n");
if (prom[0]>=6)
{
printf("\n%s %0.2f \t\taprovado\n",n1,prom[0]);
}
else
printf("\n%s %0.2f \t\treprovado\n",n1,prom[0]);
if (prom[1]>=6)
{
printf("\n%s %0.2f \t\taprovado\n",n2,prom[1]);
}
else
printf("\n%s \t %0.2f \t\t\treprovado\n",n2,prom[1]);
if (prom[2]>=6)
{
printf("\n%s \t\t%0.2f \t\t\t\t\taprovado\n",n3,prom[2]);
}
else
printf("\n%s \t %0.2f \t\treprovado\n",n3,prom[2]);
if (prom[3]>=6)
{
printf("\n%s %0.2f \t\taprovado\n",n4,prom[3]);
}
else
printf("\n%s %0.2f \t\treprovado\n",n4,prom[3]);
if (prom[4]>=6)
{
printf("\n%s %0.2f \t\taprovado\n",n5,prom[4]);
}
else
printf("\n%s %0.2f \t\treprovado\n",n5,prom[4]);
getch();
}

11.- de vectores inicializados , sacar el nombre del que tenga mayor salario
anula, y del menor tambin examen!!!! (aun no esta terminado) pero si corre a
la perfecciooon!!!

cdigo:

#include<conio.h>
#include<stdio.h>
#include<string.h>
main()
{
int op;
int dos[10]={100,100,100,100,100,100,100,100,100,100};
int ad[10]={200,200,200,200,200,200,200,200,200,200};
int ser[10]={150,150,150,150,150,150,150,150,150,150};
int mayor=1; int menor=0;
int s_dos=0,s_ad=0,s_ser=0,bono=0;
int ag,b=0;
printf("menu");
printf("\n1.- docente");
printf("\n1.- ");
printf("\n1.- ");
printf("\ningrse la opcion que desea ");
scanf("%d",&op);
switch (op)
{

case 1:
{
for (int i=0;i<=9;i++)
{
if (i==9)
{
printf("ingrse el bono del 15 de mayo\n");
scanf("%d",&bono);
}
s_dos=s_dos+dos[i]+bono;
} printf("monto anual %d: ",s_dos);
if (s_dos>mayor)
{
mayor=s_dos;
}
else if (s_dos<menor)
{
menor=s_dos;
}
}
break;
case 2:
{
char f;
for (int c=0;c<=9;c++)
{
if (c==9)
{
printf("ingrese el aguinaldo corespondiente \t");
scanf("%d",&ag);
ag=ag*3;
}
s_ad=s_ad+ad[c]+ag;
}
printf("\ntiene faltas en el ao? ");
scanf("%s",&f);
if (f=='n')
{
printf("\ningrse un bono correspondiente a 9 dias: ");
scanf("%d",&b);
}
printf("\nmonto anual %d: ",s_ad);
if (s_ad>mayor)
{
mayor=s_ad;
}
else if (s_ad<menor)
{
menor=s_ad;
}
}
break;
case 3:
{
for (int x=0; x<=9;x++)
{
s_ser=s_ser+ser[x];
}
printf("sueldo anual %d",s_ser);
if (s_ser>mayor)
{
mayor=s_ser;
}
else if (s_ser<menor)
{
menor=s_ser;
}
}
break;
}

12.- dado el nombre y su ao de nacimiento de 10 personas, guardarlos en un


arreglo, calcular la edad de cada uno de ellos e imprimirlo junto con el nombre
correspondiente. Buscar dentro de los nombres ingresados a una persona, si
esta registrado imprimir un mensaje que diga que "el nombre existe", su edad,
de lo contrario, enviar un mensaje al usuario que no existe el nombre.
cdigo:

#include<stdio.h>
#include<conio.h>
#include<string.h>
main()
{
char nombre[10][40]; char search[40];
int fecha[10]; int edad[10];
for (int i=0;i<=9;i++)
{
printf("ingrse el nombre %d: ",i+1);
gets(nombre[i]);
printf("ingrse la ao de naciemnto del nombre %d: ",i+1);
scanf("%d",&fecha[i]);
edad[i]=2013-fecha[i];
}
for (int i=0;i<=9;i++)
{
printf("\nla edad de %s es %d: ",nombre[i],edad[i]);
}
printf("\n\ningrse el nombre a busca\n");
scanf("%s",search);
for (int x=0; x<=9;x++)
{
if (strcmp(nombre[x],search)==0)
{
printf("el nombre existe!");
printf("\nsu edad es %d: ",edad[x]);
}
}
getch();

13.- el mismo problema del 12, pero en este caso inicializados en 10 vectores.

cdigo:

#include<conio.h>
#include<stdio.h>
#include<string.h>
main()
{

char a[40]="saul chaves hernandez"; char b[40]="jose vargas olivera"; char


c[40]="calderon martines rojas"; char d[40]="pedro vasconzelos zarate";
char e[40]="manuel garcia carballido";char f[40]="javier marco salsedo";char
g[40]="martha ramirez gonzales";char h[40]="fernando salazar gutierres";
char ip[40]="juan"; char j[40]="pepe aguilar hernadez"; char nombre[40]; int
ex=0;
int fecha[10]={1997,1996,1945,1967,1987,1964,1985,1991,1997,1997}; int
edad[10];
for (int i=0;i<=9; i++)
{
edad[i]=2013-fecha[i];
printf("\nedad de la persona %d: %d",i+1,edad[i]);
if (i==0)
{
printf("\nnombre: %s\n",a);
}
if (i==1)
{
printf("\nnombre: %s\n",b);
}
if (i==2)
{
printf("\nnombre: %s\n",c);
ex=1;
}
if (i==3)
{
printf("\nombre: %s\n",d);
}
if (i==4)
{
printf("\nnombre: %s\n",e);
}
if (i==5)
{
printf("\nnombre: %s\n",f);
ex=1;
}
if (i==6)
{
printf("\nnombre: %s\n",g);
}
if (i==7)
{
printf("\nnombre: %s\n",h);
}
if (i==8)
{
printf("\nnombre: %s\n",ip);
}
if (i==9)
{
printf("\nnombre: %s",j);
}
}
ex=0;
printf("\n\ningrse nombre a buscar\t");
gets(nombre);
if (strcmp(nombre,a)==0 )
{
printf("\nya existe, su edad: %d",edad[0]);
ex=1;
}
if (strcmp(nombre,b)==0)
{
printf("\nya existe, su edad: %d",edad[1]);
ex=1;
}
if (strcmp(nombre,c)==0)
{
printf("\nya existe, su edad: %d",edad[2]);
ex=1;
}
if (strcmp(nombre,d)==0)
{
printf("\nya existe, su edad: %d",edad[3]);
ex=1;
}
if (strcmp(nombre,e)==0)
{
printf("\nya existe, su edad: %d",edad[4]);
ex=1;
}
if (strcmp(nombre,f)==0)
{
printf("\nya existe, su edad: %d",edad[5]);
ex=1;
}
if (strcmp(nombre,g)==0)
{
printf("\nya existe, su edad: %d",edad[6]);
ex=1;
}
if (strcmp(nombre,h)==0)
{
printf("\nya existe, su edad: %d",edad[7]);
ex=1;
}
if (strcmp(nombre,ip)==0)
{
printf("\nya existe, su edad: %d",edad[8]);
ex=1;
}
if (strcmp(nombre,j)==0)
{
printf("\nya existe, su edad: %d",edad[9]);
ex=1;
}
if (ex==0)
{
printf("\nno existe!");
}
getch();

14.- dados 10 nombres con su sexo, imprimir cuanto son masculinos y


femeninos, ademas buscar un nombre y que me diga si ya esta escrito o si no.

cdigo:

#include<conio.h>
#include<stdio.h>
#include<string.h>
main()
{
char nom[10][20],sexo[10][20]; char m[20]="masculino"; char f[20]="femenino";
char search[20];
int fe=0,ma=0;
for (int i=0;i<=9;i++)
{
printf("ingrse el nombre %d: ",i+1);
gets(nom[i]);
printf("ingrese el sexo ");
gets(sexo[i]);
if (strcmp(sexo[i],m)==0)
{
ma++;
}
else if (strcmp(sexo[i],f)==0)
{
fe++;
}
}
printf("\n\ningrese nombre a buscar\n");
gets(search);
int ex=0;
for (int b=0;b<=9;b++)
{
if (strcmp(nom[b],search)==0)
{
printf("\nel nombre ya esta registrado");
ex=1;
}
}
if (ex==0)
{
printf("\n\nel nombre no esta registrado");
}
printf("\n\ncantidad de masculinos: %d femeninos: %d",ma,fe);
getch();

También podría gustarte