C – Relación de problemas resueltos en C

Written by lopezatienza on 07/03/2010 – 22:27 -

RELACIÓN DE PROBLEMAS


  1. Pedir cinco números por teclado e ir guardándolos en un array de 5 componentes. Pasarlo a otro array y después mostrarlo por pantalla.
  2.  Pedir seis números por teclado, guardarlos en un array y mostrar la suma de los que ocupan posiciones pares, además de sacar la media de todos ellos .
  3. Pedir cinco números por teclado, guardarlos en un array, y mostrar cual es el mayor y cual el menor.
  4. Pedir seis números por teclado, guardarlos en un array y decir cuales son divisibles por tres.
  5. Pedir seis números, guardarlos en un array. Sacar el cuadrado de cada uno de ellos
  6. Inicializar todos los componentes de una matriz de cuatro filas por cinco columnas con el número uno.
  7. Pedir cuatro números por teclado y guardarlos en una matriz de 2x2.
  8. Determinar si un número pedido por teclado, se encuentra en una matriz de 3x3, y decir en que posición está (hay que rellenar la matriz previamente).
  9. Pedir un número por teclado, y sacar todos los elementos de una matriz de 4x2 que son mayores que el número introducido por el teclado.
  10. Sacar por pantalla la suma de todos los elementos de una matriz de 3 x 3.
  11. Programa que te pide una frase y te da la longitud de la misma.
  12. Pedir una cadena de caracteres y sacar el número de vocales “a” que hay.
  13. Pedir una frase por teclado y decir cuantas vocales hay.
  14. Pedir una frase por teclado y mostrar cada palabra en una línea.
  15. Pedir una frase y mostrarla por pantalla en orden inverso.
  16. Pedir una frase y luego mostrarla con las vocales en mayúsculas.
  17. Pedir una frase y sacar la primera letra de cada palabra en mayúsculas.
  18. Pedir una frase, introducirla en un array y copiar las vocales en otro array sin que se repitan las vocales.
  19. Te pide una frase y te dice el número de vocales y consonantes que tiene.
  20. Suponemos una matriz de enteros de 4x4. Halla la diferencia de la suma de la diagonal principal menos la suma de la primera fila de la matriz.
  21. Dada una matriz, sumar por un lado los elementos pares y los elementos impares de la matriz.
  22. Pedir un numero e iniciar una matriz 3x3 con los numero pares, a partir del número introducido.
  23. Te pide cinco palabras, después te pide una sexta y te dice si esta o no.

1- Pedir cinco números por teclado e ir guardándolos en un array de 5 componentes. Pasarlo a otro array y después mostrarlo por pantalla.

#include "stdio.h"

main ()                                   

{                                                        

int vector[5], cont=0, vector2[5];

while (cont<5)

{

printf ("Dame un numero: ");

scanf ("%d",&vector[cont]);

cont=cont+1;

}

cont=0;

while (cont<5)

{

vector2[cont]=vector[cont];

cont=cont+1;

}

cont=0;

printf ("Los numeros k as escrito son: ");

while (cont<5)

{

printf ("%d, ",vector2[cont]);

cont=cont+1;

}

printf (“\n\n”);

system ("pause");}

 

2- Pedir seis números por teclado, guardarlos en un array y mostrar la suma de los que ocupan posiciones pares, además de sacar la media de todos ellos

#include "stdio.h"

main (){                                             

int cont;                                                 

float num[6],suma, media;

for (cont=0;cont<6;cont=cont+1)

{

printf ("Dame un numero: ");

scanf ("%f", &num[cont]);

}

suma=0;

for (cont=0;cont<6;cont=cont+2)

{    suma=suma+num[cont];}

printf ("\nLa suma de los numeros en posiciones pares es: %.0f\n",suma);

media=suma/3;

printf ("La media de los numeros en posiciones pares es: %.2f\n\n",media);

system ("pause");

}

 

3- Pedir cinco números por teclado, guardarlos en un array, y mostrar cual es el mayor y cual el menor.

#include "stdio.h"                              

main ()                                               

{

int num[5],min,max,cont;

for (cont=0;cont<5;cont=cont+1)

{

printf ("Dame un numero: ");

scanf ("%d", &num[cont]);

}

max=num[0];

min=num[0];

for (cont=1;cont<5;cont=cont+1)

{

if (min>num[cont])

{min=num[cont];}

if (max<num[cont])

{max=num[cont];}

}

printf ("El numero mas pekeño es: %d\n", min);

printf ("El numero mas grande es: %d\n\n", max);

system ("pause");

}

 

4- Pedir seis números por teclado, guardarlos en un array y decir cuales son divisibles por tres.

#include "stdio.h"                              

main ()                                               

{

int num[6],cont;

 

for (cont=0;cont<6;cont++)

{printf ("Dame un numero: ");

            scanf ("%d",&num[cont]);}

 

for (cont=0;cont<6;cont++)

{

  if ((num[cont]%3)==0)

            {printf ("El numero %d es divisible entre 3\n",num[cont]);}

}

system ("pause");

}

 

5- Pedir seis números, guardarlos en un array. Sacar el cuadrado de cada uno de ellos

#include "stdio.h"                    

main()

{

int num[6],cont;

for (cont=0;cont<6;cont++)

{printf ("Dame un numero: ");

            scanf ("%d",&num[cont]);}

 

for (cont=0;cont<6;cont++)

{printf ("El cuadrao de %d es: %d\n", num[cont], num[cont]*num[cont]);}

 

system ("pause");

}

 

6- Inicializar todos los componentes de una matriz de cuatro filas por cinco columnas con el número uno.

#include "stdio.h"

main ()                                                          

{                                                                                   

int matriz [4][5],x,y;

for (y=0;y<5;y++)

 {for (x=0;x<4;x++)

            matriz [x][y]=1;}

system ("pause");

}

7- Pedir cuatro números por teclado y guardarlos en una matriz de 2x2

#include "stdio.h"

main ()                                               

{                     

int matriz[2][2];                                                                                                       

for (x=0;x<2;x++)

{  for (y=0;y<2;y++)

   {

    printf ("Dame un numero: ");

    scanf ("%d",&matriz[x][y]);

   }

}

for (x=0;x<2;x++)

{  for (y=0;y<2;y++)

        printf ("%d\t",matriz[x][y]);

   printf ("\n");

} 

system ("pause");

}

 

8- Determinar si un número pedido por teclado, se encuentra en una matriz de 3x3, y decir en que posición está

#include "stdio.h"

main ()                                               

{                                                                    

int num,x,y,matriz [3][3]={1,3,2,3,1,4,2,4,1};

char band='n';

printf ("Dame un numero: ");

scanf ("%d",&num);

for (x=0;x<3;x++)

{  for (y=0;y<3;y++)

   {

      if (num==matriz[x][y])

      {

          band='s';

          break;

      }

      if (band=='s')

      break;

   }

   if (band=='s')

   break;

}

if (band=='s')

{

printf ("El numero %d si esta en la matriz\n", num);

printf ("En la posicion %d %d\n",x,y);

}

else

printf ("El numero introducido no esta en la matriz\n");

system ("pause");

}

 

9- Pedir un número, y sacar todos los elementos que son mayores de una matriz de 4x2.

#include "stdio.h"                              

main (){

int x,y,num,matriz[4][2]={1,2,3,4,5,6,7,8};

printf ("Dame un numero ");

scanf ("%d",&num);

for (x=0;x<4;x++)

{

    for (y=0;y<2;y++)

     {

      if (num<matriz[x][y])

      printf ("%d\t", matriz[x][y]);

     }

}

printf ("\n\n");

 

system(“pause”);

}

 

10- Sacar por pantalla la suma de todos los elementos de una matriz de 3x3

#include "stdio.h" 

main (){

int matriz[3][3]={1,2,3,4,5,6,7,8,9};                         

int x,y,suma=0;                                                                                

for (x=0;x<3;x++)

{

  for (y=0;y<3;y++)

   {

    if (matriz[x][y]!=matriz[y][x])

    suma=suma+matriz[x][y];

   }

}

printf ("La suma es: %d\n\n\n", suma);

system ("Pause");

}

 

11- Programa que te pide una frase y te da la longitud de la misma

#include "stdio.h" 

#include "string.h"

main (){                                                                                            

char str[80];                                                  

printf ("Dame una cadena de caracteres\n");             

gets (str);

printf ("La longitud de la cadena es: %d\n\n", strlen (str));

system ("pause");}

 

12- Pedir una cadena de caracteres y sacar el número de vocales “a” que hay

#include "stdio.h" 

#include "string.h"                 

main () {                                                                                           

int cont=0, x, longitud;

char str[80];

printf ("Escribeme una frase:\n");

gets (str);

longitud=strlen(str); // esto de devuelve un numero

for (x=0;x<longitud;x++)

    {

     if (str[x]=='a')

       cont=cont+1;

    }

printf ("El numero de 'a' que hay en la frase es: %d\n\n", cont);

system ("pause");

}

 

13- Pedir una frase por teclado y decir cuantas vocales hay

#include "stdio.h" 

#include "string.h"

main () {                                                                                           

char str[80];                                                                         

int x,vocales=0;

printf ("Dame una frase: ");

gets (str);

for (x=0;x<strlen(str);x++)

{

    if (str[x]=='a')

        vocales++;

    if (str[x]=='e')

        vocales++;

    if (str[x]=='i')

        vocales++;

    if (str[x]=='o')

        vocales++;

    if (str[x]=='u')

        vocales++;

}

printf ("El numero de vocales es: %d\n\n", vocales);

system ("pause");

}

 

14- Pedir una frase por teclado y mostrar cada palabra en una linea

#include "stdio.h"                                                     

#include "string.h"

main ()

{

char frase[80];

int x;

printf ("Dame una frase: ");

gets (frase);

for (x=0;x<strlen(frase);x++)

{

    if(frase[x]==' ')

    frase[x]='\n';

   

 printf ("%c", frase[x]);

}

printf ("\n\n");

system ("pause");

}

 

15- Pedir una frase y mostrarla por pantalla en orden inverso

#include "stdio.h"                                                                 

#include "string.h"                                                                

main ()

{

char frase[80];

int x;

printf ("Dame una frase: ");

gets (frase);

printf ("Esta es tu frase al reves");

for (x=strlen(frase);x>=0;x--)

{

    printf("%c", frase[x]);

}

printf ("\n\n");

system ("pause");

}

 

16- Pedir una frase y luego mostrarla con las vocales en mayúsculas

#include "stdio.h"

#include "string.h"

main () {                                                                                           

char frase [80];                                                                    

int x;

printf ("Dame una frase:\n");

gets (frase);

for (x=0;x<strlen(frase);x++)

{

             switch (frase[x])

             {

                          case 'a':

                          case 'e':

                          case 'i':

                          case 'o':

                          case 'u': frase[x]=toupper(frase[x]);

                                                 printf ("%c", frase[x]);

                                                 break;

                          default:

                                                printf ("%c", frase[x]);

             }

}

printf ("\n");

system ("pause");

}

 

17- Pedir una frase y sacar la primera letra de cada palabra en mayúsculas                                                                                                          

#include "stdio.h"

#include "string.h"                   

main (){

int x;

char frase[80];

printf ("Dame una frase: ");

gets (frase);

printf ("\n\n");

frase[0]=toupper(frase[0]);

 

for (x=0;x<strlen(frase);x++)

{

    if (frase[x]==' ')

    frase[x+1]=toupper(frase[x+1]);

}

printf ("%s\n\n", frase);

system ("pause");

}

 

18- Pedir una frase y copiar las vocales de este en otro array sin que se repitan las vocales

#include "stdio.h"

#include "string.h"

main (){                                                                                            

int x,y=0,z,xx;                                                          

char frase[80],frase2[5], esta='n';                 

printf ("Dame una frase: ");

gets (frase);

for (x=0;x<strlen(frase);x++)

{

esta='n';

    switch (frase[x])

    {

        case 'a':

        case 'e':

        case 'i':

        case 'o':

        case 'u':

                for (xx=0;xx<=y;xx++)

                { if(frase[x]==frase2[xx])

                       esta='s';

                }

                if(esta=='n')

                  frase2[y++]=frase[x];

                break;

        default:

                ;

   }

}

frase2[y]='\0';

printf ("Las vocales de la frase son: %s\n\n", frase2);

system ("pause");

}

 

19- Te pide una frase y te dice el número de vocales y consonantes que tiene

#include "stdio.h"                                          

#include "string.h"                                         

main()

{

char frase[80];

char vocal;

int x,cont=0,cont2=0

printf("introduce una frase\n");

gets(frase);

for(x=0;x<strlen(frase);x++)

{

        if(frase[x]==' ')

                x=x++;

        vocal=frase[x];

       switch(vocal)

    {

            case 'a':

            case 'e':

            case 'i':

            case 'o':

            case 'u':cont=cont+1;

            break;

   

            default:cont2=cont2+1;

    }

}

printf("las vocales son: %d\n",cont);

printf("las consonantes son: %d\n",cont2);

system("pause");

}

 

20- Suponemos una matriz de enteros de 4x4. Halla la diferencia de la suma de la diagonal principal menos la suma de la primera fila de la matriz

#include "stdio.h"

#include "string.h"                                         

main(){

int matriz[4][4]={1,2,3,4,5,6,7,1,3,0,4,3,5,1,1,1};

int sumadi=0, sumafila=0,resta,x,y;                                                                             

for (x=0;x<4;x++)                                                     

{                                                                                           

   for (y=0;y<4;y++)

    {

       if (x==0)

          sumafila=sumafila+matriz[0][y];

       if(x==y)

          sumadi=sumadi+matriz[x][y];

    }

}

for (x=0;x<4;x++)

{

    for (y=0;y<4;y++)

    {

       printf ("%d ", matriz[x][y]);

    }

printf ("\n");

}

resta=sumadi-sumafila;

printf ("La resta es: %d\n\n", resta);

system ("pause");

}

 

21- Dada una matriz, sumar por un lado los elementos pares y los elementos impares de la matriz

#include "stdio.h"

#include "string.h"                                         

main(){                                                                     

int matriz[3][3]={1,2,3,5,8,0,4,2,4};

int x,y,sumapar=0,sumaimpar=0;

for (x=0;x<3;x++)

{

    for (y=0;y<3;y++)

    {

        if ((matriz[x][y]%2)==0)

            sumapar=sumapar+matriz[x][y];

        else

            sumaimpar=sumaimpar+matriz[x][y];

    }

}

printf ("La suma de los numeros pares es: %d\n\n", sumapar);

printf ("La suma de los numeros impares es: %d\n\n", sumaimpar);

system ("pause");

}

 

22- Pedir un numero e iniciar una matriz 3x3 con los numero pares, a partir del número introducido

#include "stdio.h"

#include "string.h"                                                    

main (){                                                                                

int matriz[3][3],num,x,y,cont;                       

printf ("Dame un numero: ");

scanf("%d",&num);

if ((num%2)==0)

cont=num;

else

cont=num+1;

for (x=0;x<3;x++)

{

    for (y=0;y<3;y++)

    {

        matriz[x][y]=cont++;

        cont++;

    }

}

for (x=0;x<3;x++)

{

    for (y=0;y<3;y++)

       printf ("%d ", matriz[x][y]);

printf("\n");

}

system ("pause");

}

 

23- Te pide cinco palabras, después te pide una sexta y te dice si esta o no

#include "stdio.h"

#include "string.h" 

main (){                                                                    

int x;

char vect[5][80];

char frase[80],band='n';

for (x=0;x<5;x++)

{

    printf ("Dame una frase: ");

    gets (vect[x]);

}

printf ("\n\nDame una frase a buscar entre las anteriores: ");

gets (frase);

for (x=0;x<5;x++)

{

    if (strcmp(vect[x],frase)==0)

    band='s';      

}

if (band=='s')

printf ("\nSe ha encontrado la frase\n\n");

else

printf (("\nNo se ha encontrado la frase\n\n");

system ("pause");

}


Autor: Antonio Lopez Atienza


Tags:
Posted in Lenguaje C | 3 Comments »

3 Comments to “C – Relación de problemas resueltos en C”

  1. hugo Says:

    MUY BUENO LO QUE CREASTE

  2. lopezatienza Says:

    Siempre está bien una relación basica de C.

    Me alegro que te sirviera.

    Un saludo!

  3. luis Says:

    Defina una matriz de n x n, a partir de una relación establecida previamente o viceversa.

Leave a Comment

 

RSS
MCC D5E