01 PRACTICAS Printf Scanf ZINJAI
01 PRACTICAS Printf Scanf ZINJAI
01 PRACTICAS Printf Scanf ZINJAI
INSTRUCCIONES DE E/S
- DE SALIDA:
La instrucción de salida por excelencia es PRINTF. Nos permite mostrar por pantalla desde una constante, ya sea una
cadena, número, hasta una variable de cualquier tipo. STDIO.H es la librería que contiene printf. Estándar input/output. El
formato de printf es el siguiente:
Ej:
TIPOS DE IDENTIFICADORES
%S ! nos permite representar una cadena de caracteres (un array de char (varias letras)).
%E ! Nos permite representar coma flotante de forma exponencial. Un número de forma exponencial.
%P ! nos permite mostrar el valor de un puntero (que almacena una dirección de memoria)
%LD
%LI ! muestran enteros largos (long int). Si un entero tiene 2 byte, un entero largo tiene 4 byte.
%LT ! representamos un double.
%2.2f 25.38261
Esto se llama flash
\ BARRA INVERTIDA
\n ! a partir de este código se produce en la pantalla un salto de línea. \n\n\n (3 saltos de línea). La posición es importante.
Siempre tiene que estar dentro de la cadena de control.
\t ! se produce una tabulación. Cinco caracteres de desplazamiento por defecto. \t\t ( dos desplazamientos.
\r ! para indicar un retorno de carro, que es un código ASCII 13. Cuando por ejemplo, pulsa intro. Cuando se pone \n, es
un \r y un salto de línea.
“\” ………\””
- DE ENTRADA:
SCANF también está en STDIO.H. Nos sirve para introducir datos por el teclado, cualquier tipo de variable. Su formato es:
Dentro de esta cadena, lo único que nos admite son los identificadores (%d, %i, etc), que son los mismos que en printf.
p.e.
scanf(%d”, &variable);
donde & es dirección de (variable). Si no se pone esto, no lo hace; toma variable como dirección y no lo ejecuta
correctamente.
scanf/”%d”, cadena);
cadena 20 ! aquí no se pone &, por que el nombre del array de caracteres es un puntero a la posición del array (esto es
para introducirlo de golpe).
pero es preferible hacer varios scanf, 1 por variable. Se pueden introducir diferentes identificadores. Hay algunas veces
que en el buffer del teclado se quedan 2 retornos de carro almacenados, esto implica que se salten algunas líneas. Para
solucionarlo ponemos:
Una excepción a esto es cuando queremos leer más de un carácter del teclado, teclas especiales (intro, sangría, etc.)
#include <stdio.h>
using namespace std;
int main()
{
float edad,numpulsaciones;
printf ("escriba la edad");
scanf ("%f", &edad);
numpulsaciones = (220-edad)/10;
printf ("el numero de pulsaciones es %f", numpulsaciones);
return 0;
}
#include <stdio.h>
using namespace std;
int main()
{
double edad,numpulsaciones;
printf ("escriba la edad");
scanf ("%lf", &edad);
numpulsaciones = (220-edad)/10;
printf ("el numero de pulsaciones es %f", numpulsaciones);
return 0;
}
# include <stdio.h>
int main()
{
int num1,num2;
printf("ingresa dos numeros");
scanf("%d",&num1);
scanf("%d",&num2);
if(num2<num1)
printf("el numero mayor es:%d",num1);
else if(num2>num1)
printf("el numero mayor es:%d",num2);
}
2.-Escribir un programa en C que leatres números e indique el tipo de triángulo que
forman (isósceles, equilatero, escaleno). Comprobar que los números realmente formen
un triángulo, sino emitir el error.
#include<stdio.h>
int main()
{
int a,b,c;
printf("inserte tres lados\n\n\a");
scanf("%d",&a);
scanf("%d",&b);
scanf("%d",&c);
if (a==b & a==c)
printf("tu triangulo es equilatero");
else if (a==b)
printf("tu triangulo es isoseles");
else if (a==c)
printf("tu triangulo es isoseles");
else if (b==c)
printf("tu triangulo es isoseles");
else if(b==a)
printf("tu triangulo es isoseles");
else if (c==a)
printf("tu triangulo es isoseles");
else if (c==b)
printf("tu triangulo es isoseles");
else
printf("tu triangulo es escaleno");
}
#include<stdio.h>
int main()
{
int cat1,cat2,hipo;
printf("inserte el cateto 1 \n");
scanf("%d",&cat1);
printf("inserte el cateto 2\n");
scanf("%d",&cat2);
hipo=cat2/cat1;
printf("el cateto opuesto es de %d \n el cateto adyancente es de %d \n la hipotenusa es de %d",cat1,cat2,hipo);
}
4.-Simular una clave de acceso.
#include<stdio.h>
int main()
{
int clave;
printf("Por favor introdusca su codigo de acceso");
scanf("%d",&clave);
if (clave==123321)
printf("codigo de acceso correcto \a");
else
printf("codigo invalido <<<ALERTA DE INTRUSO BLOQUEANDO SISTEMA EN 3...2...1...
OUT>>>\a");
}
5.-Desarrolle un algoritmo que le permita determinar el área y volumen de un
cilindro cuyo radio (R) y altura (H) se leen desde teclado.
#include<stdio.h>
int main()
{
int h,r,area,vol;
printf("inserte el radio de un cilindro\n\a");
scanf("%d",&r);
printf("inserte la altura del cilindro\n\a");
scanf("%d",&h);
area=6.2836*r+h+r;
vol=(3.1416*h)+(r*r);
printf("el area es de %d cm^2\n",area);
printf("\n el volumen es de %d cm^2\n",vol);
}
6.-Desarrolle un algoritmo que le permita leer un valor cualquiera N y escribir
si dicho número es común divisor de otros dos valores leídos W y Z
# include<stdio.h>
int main()
{
int n1,n2, m,r1,r2;
printf("introduce el valor del posible multiplo\n");
scanf("%d",&m);
printf("introduce dos valores para comprobar si comparten multiplo\n");
scanf("%d",&n1 );
scanf("%d",&n2 );
r1=(n1*m);
r2=(n2*m);
if (r1%2 == 0)
{
if (r2%2 == 0)
{
printf("tiene el mismo multiplo");
}
else
{
printf("no tiene el mismo multiplo");
}
}
else
CENTRO COMERCIAL BOULEVARD SAN ROQUE LOCAL 8
ACARIGUA – 01C_SECUENCIAL
CENTRO COMPUTACION DIGICOM
CURSOS DE COMPUTACION 01C_SECUENCIAL 7 / 7
http://digicomcursos.iespana.es Correo:digicompcursos@cantv.net
{
printf("no comparten el mismo multiplo");
}
}
8.-Desarrolle un algoritmo que le permita leer 2 valores A y B e indicar si uno
de los dos divide al otro exactamente.
# include <stdio.h>
int main()
{
int a,b;
printf("ingrese un valor numerico n A\n");
scanf("%d",&a);
printf("ingrese un numero valor numerico n B\n");
scanf("%d",&b);
if(a==b)
printf("Los numeros A y B ambos son divisibles entre ellos exactamente");
else
if((a/b)%1==0)
printf("el numero B divide exactamente al numero A");
else
if((b/a)%1==0)
printf("el numero A divide exactamente al B");
else
printf("los numeros A y B ningunos de los dos son exactamente divisible");
}
9.-Desarrolle un algoritmo que le permita leer dos valores A y B e indicar cual
de las dos restas (B-A) o (A-B) es positiva.
# include <stdio.h>
int main()
{
int a,b,r1,r2;
printf("ingrese un numero A\n");
scanf("%d",&a);
printf("ingrese un numero B\n");
scanf("%d",&b);
r1=a-b;
r2=b-a;
if(r1>0)
printf("la resta A-B es positiva");
else
if(r2<0)
printf("la resta B-A es negativa");
else
printf("la resta no es positiva");
}
EJERCICIO 02
#include <stdio.h>
using namespace std;
int main(int argc, char *argv[]) {
double numero, valabsoluto;
printf ("regristre un numero");
scanf ("%lf", &numero);
valabsoluto = numero/1;
printf ("el valor absoluto es%f",valabsoluto);
return 0;
}
EJERCICIO 03
#include <stdio.h>
using namespace std;
int main(int argc, char *argv[]) {
double presion,volumen,temperatura,masa;
printf ("ingrese valor presion");
scanf ("%lf", &presion);
printf ("ingrese valor volumen");
scanf ("%lf", &volumen);
printf ("ingrese valor temperatura");
scanf ("%lf", &temperatura);
masa = (presion*volumen)/(0.37*(temperatura+460));
printf ("la cantidad de masa es%lf", masa);
return 0;
EJERCICIO 04
#include <stdio.h>
using namespace std;
int main(int argc, char *argv[]) {
double edad,numpulsaciones;
printf ("escriba la edad");
scanf ("%lf", &edad);
numpulsaciones = (220-edad)/10;
printf ("el numero de pulsaciones es %lf", numpulsaciones);
return 0;
EJERCICIO 05
#include <stdio.h>
using namespace std;
int main(int argc, char *argv[]) {
double salario, nuevosalario;
printf ("registre valor actual del salario");
scanf ("%lf", &salario);
nuevosalario = (salario*25/100)+salario;
printf ("el nuevo salario es %lf", nuevosalario);
return 0;
EJERCICIO 06
#include <stdio.h>
CENTRO COMERCIAL BOULEVARD SAN ROQUE LOCAL 8
ACARIGUA – 01C_SECUENCIAL
CENTRO COMPUTACION DIGICOM
CURSOS DE COMPUTACION 01C_SECUENCIAL 9 / 7
http://digicomcursos.iespana.es Correo:digicompcursos@cantv.net
using namespace std;
int main(int argc, char *argv[]) {
double presupuesto, gine, pedi, traum;
printf ("ingrese el presupuesto anual del hospital");
scanf ("%lf", &presupuesto );
gine = presupuesto*40/100;
printf ("el presupuesto para ginecologia es %lf", gine);
pedi = presupuesto*30/100;
printf ("el presupuesto para pediatria es %lf", pedi);
traum = presupuesto*30/100;
printf ("el presupuesto para traumatologia es %lf", traum);
return 0;
EJERCICIO 07
#include <stdio.h>
using namespace std;
int main(int argc, char *argv[]) {
double compra, valor_a_vender;
printf ("registre el valor compra del articulo");
scanf ("%lf", &compra);
valor_a_vender = (compra*30/100)+compra;
printf ("el valor del articulo para la venta es %lf", valor_a_vender);
return 0;
EJERCICIO 08
#include <stdio.h>
using namespace std;
return 0;
EJERCICIO 09
#include <stdio.h>
CENTRO COMERCIAL BOULEVARD SAN ROQUE LOCAL 8
ACARIGUA – 01C_SECUENCIAL
CENTRO COMPUTACION DIGICOM
CURSOS DE COMPUTACION 01C_SECUENCIAL 10 / 7
http://digicomcursos.iespana.es Correo:digicompcursos@cantv.net
using namespace std;
return 0;
EJERCICIO 10
#include <stdio.h>
using namespace std;
printf ("CALCULO");
Prom_Calculo = (Nota1C_C*20/100)+(Nota2C_C*20/100)+(Nota3C_C*30/100)+(Nota4C_C*30/100);
printf ("el promedio de calculo es %lf", Prom_Calculo);
printf ("PROGRAMACION");
Prom_programacion = (Nota1C_P*20/100)+(Nota2C_P*20/100)+(Nota3C_P*30/100)+(Nota4C_P*30/100);
printf ("el promedio de programacion es %lf", Prom_programacion);
printf ("INTRODUCCION");
Prom_introduccion = (Nota1C_I*20/100)+(Nota2C_I*20/100)+(Nota3C_I*30/100)+(Nota4C_I*30/100);
printf ("el promedio de introduccion es %lf", Prom_introduccion);
Prom_Curso = (Prom_Calculo+Prom_programacion+Prom_introduccion)/3;
printf ("el promedio del curso es %lf", Prom_Curso);
return 0;