Anda di halaman 1dari 15

Ejercicios Sencillos en Lenguaje C

1. Crear un programa en C que lea dos nmeros y que escriba el mayor de

los dos.
2. Crear un programa en C que lea un nmero e indique si es par o no 3. Leer tres nmeros y escribir el mayor de los tres 4. Escribir un programa en C que lea nmeros enteros indefinidamente

hasta que llegue el nmero 0


5. Escribir un programa C que lea exactamente 8 nmeros y luego escriba

la suma de todos ellos


6. Modificar el programa anterior para que en lugar de leer 8 nmeros, se

puedan leer tantos nmeros como se quiera hasta que llegue un cero. El resultado es la suma de todos los nmeros ledos.
7. Intentar escribir un programa en C que lea tres nmeros e indique el tipo

de tringulo que forman (issceles, equiltero, escaleno). Comprobar que los nmeros realmente formen un tringulo, sino emitir el error.
8. Modificar el programa anterior para que se pueda repetir indefinidamente

si el usuario lo desea (que el ordenador pregunte Quiere continuar? y la persona pueda responder S N)
9. Escribir un programa que escriba todos los mltiplos de 3 del nmero 1

al 3000
10. Programa que lea una serie de nmeros (leer hasta que llegue el cero

por ejemplo) y que calcule su media aritmtica


11. Programa que escriba todo el cdigo ASCII (el cdigo ASCII va de 0 a

255 y representa el nmero con el que los ordenadores almacenan los caracteres)
12. Programa que lea un nmero entero por teclado y que calcule su

factorial
13. Programa que lea una serie de nmeros por teclado e indique cul es el

mayor
14. Crear un programa que lea un nmero entero y a partir de l cree un

cuadrado de asteriscos con ese tamao. Los asteriscos slo se vern en el borde del cuadrado, no en el interior15. Crear un programa C que lea cantidades y precios y al final indique el total de la factura.

16.

17. 18.

19.

Primero se pregunta: Introduzca la cantidad vendida, tras lo cual el usuario introducir un nmero entero positivo. Despus se pregunta: Introduzca el precio, que ser un nmero decimal positivo. La lectura termina cuando en la cantidad se introduzca un cero. Si es as se escribir el total. Crear un programa para calcular los salarios semanales de unos empleados a los que se les paga 15 Bs. por hora si stas no superan las 35 horas. Cada hora por encima de 35 se considerar extra y se paga a 22 Bs. El programa pide las horas del trabajador y devuelve el salario que se le debe pagar. Adems el programa debe preguntar si deseamos calcular otro salario, si es as el programa se vuelve a repetir Escribir un programa en C que lea nmeros enteros indefinidamente hasta que llegue el nmero 0 Crear el programa asteriscos4 en el que se introduce un nmero entero y se crea una pirmide de asteriscos. Por ejemplo si se introduce el 6, el resultado sera: * *** ***** ******* ********* *********** Modificar el ejercicio anterior para que aparezca un rombo.

20. Crear un programa que escriba dos columnas de nmeros, en la primera se colocan los nmeros del 1 al 100, en la segunda los nmeros del 100 al 1 21. Crear un programa en C que lea un nmero entero y positivo y que escriba tres columnas. La primera cuenta desde uno hasta el nmero escrito contando de uno en uno; la segunda columna cuenta de dos en dos y la tercera de tres. 22. Crear el programa tablaMultiplicar que escriba la tabla de multiplicar del nmero 1 al nmero 15 23. Crear un programa que muestre un men como este: 1) Salir 2) Sumatorio 3) Factorial Tras mostrar el men, el programa debe leer un nmero del 1 al tres si se elige 1, el programa acaba. Si se elige 2 se calcula el sumatorio del nmero, si se elige 3 se calcula el factorial (en ambos casos el programa pedir escribir el nmero sobre el que se calcula el sumatorio o el factorial). Tras calcular el sumatorio o el factorial e indicar el resultado, el programa volver a mostrar el men y as sucesivamente. 24. Crear un programa que lea un nmero e indique su valor en la sucesin de Fibonacci (llamarle Fibonacci).

Esta sucesin calcula su valor de la siguiente manera. Slo es vlido para nmeros positivos, si el nmero es un uno, la sucesin vale 1 si es dos, la sucesin vale 2. Para el resto la sucesin es la suma de la sucesin de los dos nmeros anteriores. Es decir, para 7 el valor sera lo que valga la sucesin de 6 ms la sucesin de cinco.

Posibles Soluciones
1. #include <stdio.h> int main(){ double x,y; printf("Escribe el primer nmero"); scanf("%lf",&x); printf("Escribe el segundo nmero"); scanf("%lf",&y); if(x>y) printf("El mayor es %f",x); else if(y>x) printf("El mayor es %f",y); else printf("Son iguales"); }

2. #include <stdio.h> int main(){ int x; printf("Escribe el nmero (sin decimales"); scanf("%i",&x); if(x%2==0) printf("Es par"); else printf("Es impar"); }

3. #include <stdio.h> int main(){ double x,y,z; //Lectura de datos printf("Escribe el primer nmero"); scanf("%lf",&x); printf("Escribe el segundo nmero"); scanf("%lf",&y); printf("Escribe el tercer nmero"); scanf("%lf",&z);

if(x>y && x>z) { //El mayor es x if(y>z) printf("\t%lf\t%lf\t%lf", x, y, z); else printf("\t%lf\t%lf\t%lf", x, z, y); } else if (y>x && y>z) { //El mayor es y if (x>z) printf("\t%lf\t%lf\t%lf", y, x, z); else printf("\t%lf\t%lf\t%lf", y, z, x); } else { //El mayor es z if (x>y) printf("\t%lf\t%lf\t%lf", z, x, y); else printf("\t%lf\t%lf\t%lf", z, y, x); } }

4. #include <stdio.h> int main(){ int x; do{ scanf("%i",&x); }while(x!=0); }

5. #include <stdio.h> int main(){ int x; int suma=0; for(int i=1; i<=8; i++){ scanf("%i",&x); suma+=x; } printf ("Suma= %i",suma); }

6. #include <stdio.h>

int main(){ int x; int suma=0; do{ scanf("%i",&x); suma+=x; }while (x!=0); printf ("Suma= %i",suma); }

7.

#include <stdio.h> int main(){ int x,y,z; printf ("Escribe el primer lado"); scanf("%i",&x); printf ("\nEscribe el segundo lado"); scanf("%i",&y); printf ("\nEscribe el tercer lado"); scanf("%i",&z); printf("\n\n\n"); //Saltar tres lneas /*Comprobacin de si es un tingulo, damos por hecho que los nmeros son positivos */ if ((x+y>z) && (x+z>y) && (y+z)>x){ if (x==y && x==z) printf ("Equiltero"); else if (x==y || x==z || y==z) printf ("Issceles"); else printf("Escaleno"); } else printf("Esos nmeros no forman un tringulo"); }
8.

#include <stdio.h> int main(){ int x,y,z; char resp; do {

printf ("Escribe el primer lado"); scanf("%i",&x); printf ("\nEscribe el segundo lado"); scanf("%i",&y); printf ("\nEscribe el tercer lado"); scanf("%i",&z); printf("\n\n\n"); //Saltar tres lneas /*Comprobacin de si es un tringulo, damos por hecho que los nmeros son positivos */ if ((x+y>z) && (x+z>y) && (y+z)>x){ if (x==y && x==z) printf ("Equiltero"); else if (x==y || x==z || y==z) printf ("Issceles"); else printf("Escaleno"); } else printf("Esos nmeros no forman un tringulo"); printf("\nDesea continuar (S/N)?)"); scanf("%c",&resp); }while (resp!='N' && resp!='n'); }
9. #include <stdio.h> int main(){ for(int i;i<=1000;i+=3) printf("%i\t",i); }

10. #include <stdio.h> int main(){ int i,suma=0,cont=0; do{ printf("\nNmero: "); scanf("%i",&i); suma+=i; if (i!=0) cont++;

}while (i!=0); if(cont!=0) printf("\nMedia: %5.2f",(float)suma/cont); else printf("\nNo hubo nmeros"); }

11.

#include <stdio.h> int main(){ for(int i=0;i<=255;i++){ printf("%c(%i)\t",i,(int)i); //Salto de lnea cada 5 smbolos if (i%10==5) printf("\n"); } }
12. #include <stdio.h> int main(){ int x; double fact=1; printf("Escriba el nmero: "); scanf("%i",&x); while(x>1) fact*=x--; printf("Factorial =%lf",fact); }

13. #include <stdio.h> int main(){ int i,mayor=0; do{

printf("\nNmero: "); scanf("%i",&i); if (mayor<i) mayor=i; }while (i!=0); printf("\nEl mayor es %i",mayor); }

14.

#include <stdio.h> int main(){ int n,fila,col; printf("tamao del cuadrado: "); scanf("%d",&n); /*Primera fila*/ for(col=1;col<=n;col++){ printf("*"); } printf("\n"); /*Filas interiores*/ for(fila=2;fila<n;fila++){ printf("*"); for(col=2;col<n;col++){ printf(" "); } printf("*"); printf("\n"); } /* ltima fila*/ for(col=1;col<=n;col++){ printf("*"); } }
15. #include <stdio.h> int main(){ int n; double precio, total=0;

do{ do{ printf("\nIntroduzca la cantidad vendida: "); scanf("%d",&n); if(n<0) printf("Cantidad no valida"); }while(n<0); if (n>0){ printf("Introduzca el precio: "); do{ scanf("%lf",&precio); if(precio<0) printf("Precio no valido"); else total+=n*precio; }while(precio<0); } }while(n!=0); printf("Total vendido = %.2f", total); }

16.

#include <stdio.h> #include <conio.h> int main(){ char resp; const intJORNADA=35,PRECIO_NORMAL=12,PRECIO_EXTRA=22; int horas, salario; do{ printf("Horas trabajadas: "); scanf("%d",&horas); if(horas<=35) salario=horas*PRECIO_NORMAL; elsesalario=JORNADA*PRECIO_NORMAL+(horasJORNADA)*PRECIO_EXTRA; printf("Salario = %d euros\n\n", salario); fflush(stdin); /* Para limpiar el buffer de teclado */ printf("Desea calcular otro salario (s/n)?\n"); scanf("%c",&resp); } while(resp!='S' && resp!='s'); }

17. #include <stdio.h> int main(){ int x; do{ scanf("%i",&x); }while(x!=0); }

18.

#include <stdio.h> int main(){ int n,fila,col; printf("tamao de la piramide: "); scanf("%d",&n); for(fila=1;fila<=n;fila++){ /* Espacios en blanco*/ for(col=1;col<=n-fila;col++){ printf(" "); } for(col=1;col<=2*fila-1;col++){ printf("*"); } printf("\n"); } }
19.

#include <stdio.h> int main(){ int n,fila,col; printf("tamao de la piramide: "); scanf("%d",&n); for(fila=1;fila<=n;fila++){ /* Espacios en blanco*/ for(col=1;col<=n-fila;col++){ printf(" "); } for(col=1;col<=2*fila-1;col++){

printf("*"); } printf("\n"); } /* Escritura de la parte inferior */ for(fila=n-1;fila>=1;fila--){+ /* Espacios en blanco*/ for(col=1;col<=n-fila;col++){ printf(" "); } for(col=1;col<=2*fila-1;col++){ printf("*"); } printf("\n"); } }
20. #include <stdio.h> int main(){ int col1=1, col2=100; while(col1<=100){ printf("%d\t\%d\n",col1,col2); col1++; col2--; } }

21. #include <stdio.h> int main(){ int col1=1, col2=1,col3=1; int n; printf("Escriba el nmero: "); scanf("%d",&n); while(col1<=n){ printf("%d",col1); if(col2<=n) { printf("\t%d",col2); if(col3<=n){

printf("\t%d",col3); col3+=3; } col2+=2; } printf("\n"); col1++; } }

22. #include <stdio.h> int main(){ const int TAMANIO=15; int i,j; for(i=1;i<=15;i++){ for(j=1;j<=15;j++){ printf("%4d",i*j); } printf("\n"); } }

23.

#include <stdio.h> #include <conio.h> int main(){ int seleccion; int n,aux; double res; do{ /* Mostrar el men*/ do{ printf("1 Salir\n2 Sumatorio\n"); printf("3 Factorial\n\nEscriba su opcion"); scanf("%d",&seleccion); }while(seleccion!=1 && seleccion!=2 && seleccion!=3); if(seleccion==2){/* Sumatorio */

printf("Escriba el numero sobre el que quiere el sumatorio"); scanf("%d",&n); res=0; for(aux=n;aux>=1;aux--) res+=aux; printf("El sumatorio es: %.0lf\n"); printf("Pulse cualquier tecla para continuar\n\n\n",res); getch(); } else if(seleccion==3){ /* Factorial */ printf("Escriba el numero sobre el que quiere el factorial"); scanf("%d",&n); res=1; for(aux=n;aux>=1;aux--) res*=aux; printf("El sumatorio es: %.0lf\n"); printf("Pulse cualquier tecla para continuar\n\n\n",res); getch(); } }while(seleccion!=1); }
24.

#include <stdio.h> int main(){ int f1=1,f2=1;/*Valores anteriores*/ int n,cont; double res=1; /* Resultado final */ do{ printf("Escriba el nmero: "); scanf("%d",&n); if(n<=0) printf("Numero no valido\n"); }while(n<=0); for(cont=3;cont<=n;cont++){ res=f1+f2; f1=f2; f2=res; } printf("Resultado: %.0f",res); }

Fuente: http://www.jorgesanchez.net/programacion/ejerciciosc/sencillos.html

Anda mungkin juga menyukai