Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cabeza
Cuerpo
Comentarios
A la hora de programar es conveniente aadir comentarios
(cuantos ms mejor) para poder saber que funcin tiene
cada parte del cdigo, as facilitaremos el trabajo a otros
Programadores que puedan utilizar nuestro archivo fuente.
Para poner comentarios en un programa escrito en C
usamos los smbolos /* y */
El smbolo /* se coloca al principio del comentario y el
smbolo */ al final.
Palabras Claves
Existen una serie de indicadores reservados, con una
finalidad determinada, que no podemos utilizar como
identificadores.
A continuacin vemos algunas de estas palabras clave:
Identificadores
Un identificador es el nombre que damos a las variables y
funciones. Est formado por una secuencia de letras y
dgitos, aunque tambin acepta el caracter de subrayado
_. Pero no acepta los acentos ni la /.
El primer carcter de un identificador no puede ser un
nmero, es decir que debe ser una letra o el smbolo _.
Se diferencian las maysculas de las minsculas, as num,
Num y nuM son distintos identificadores.
Variables
Variables
Ejemplo:
/* Uso de las variables */
#include <stdio.h>
int main() /* Suma dos valores */
{
int num1=4,num2,num3=6;
printf("El valor de num1 es %d",num1);
printf("\nEl valor de num3 es %d",num3);
num2=num1+num3;
printf("\nnum1 + num3 = %d",num2);
}
Variables
Donde se declaran
Las variables pueden ser de dos tipos segn el lugar en que
las se declaren: globales o locales.
La variable global se declara antes de la main( ). Puede ser
utilizada en cualquier parte del programa y se destruye al
finalizar ste.
La variable local se declara despus de la main( ), en la
funcin en que vaya a ser utilizada. Slo existe dentro de
la funcin en que se declara y se destruye al finalizar
dichafuncin.
Variables
Ejemplo:
/* Declaracin de variables */
#include <stdio.h>
int a;
int main() /* Muestra dos valores */
{
int b=4;
printf("b es local y vale %d",b);
a=5;
printf("\na es global y vale %d",a);
}
Constantes
Constantes
El valor de una constante no puede ser modificado de
ninguna manera.
/* Uso de las constantes */
#include <stdio.h>
#define pi 3.1416
#define escribe printf
int main() /* Calcula el permetro */
{
int r;
escribe("Introduce el radio: ");
scanf("%d",&r);
escribe("El permetro es: %f",2*pi*r);
}
Secuencias de escape
Ciertos caracteres no representados grficamente se
pueden representar mediante lo que se conoce como
secuencia de escape. A continuacin vemos una tabla de las
ms significativas:
Secuencias de escape
Ejemplo:
/* Uso de las secuencias de escape */
#include <stdio.h>
main() /* Escribe diversas sec. de escape */
{
printf("Me llamo \"Nemo\" el grande");
printf("\nDireccin: C\\ Mayor 25");
printf("\nHa salido la letra \'L\'");
printf("\nRetroceso\b");
printf("\n\tEsto ha sido todo");
}
Inclusin de ficheros
Inclusin de ficheros
2.- Indicando que se encuentran en el directorio por
defecto del compilador.
#include <misfunc.h>
Incremento (suma 1)
Decremento (resta 1)
Cambio de signo
Operadores de Asignacin
=
+=
-=
*=
/=
%=
Asignacin simple
Suma
Resta
Multiplicacin
Divisin
Mdulo (resto)
Operadores de Asignacin
/* Uso de los operadores de asignacion */
#include <stdio.h>
main() /* Realiza varias operaciones */
{
int a=1,b=2,c=3,r;
a+=5;
printf("a + 5 = %d\n",a);
c-=1;
printf("c - 1 = %d\n",c);
b*=3;
printf("b * 3 = %d",b);
}
Jerarqua de operadores
Ser importante tener en cuenta la precedencia de los
operadores a la hora de trabajar con ellos:
( ) Mayor precedencia
++, - *, /, %
+, Menor precendencia
Las operaciones con mayor precedencia se realizan antes
Que las de menor precedencia.
Jerarqua de operadores
Jerarqua de operadores
Operadores Relacinales
Son los siguientes :
< Menor que...
< = Menor o igual que...
= = Igual que...
> Mayor que...
>= Mayor o igual que...
!= Distinto (no igual)
Resultado: cierto ( 1 ) o falso (0).
Operadores Relacinales
Ejemplo:
#include < stdio,h >
void main(void)
{ int cierto, falso;
cierto = ( 12 < 22);
falso = ( 2 > 4) ;
printf("\n Cierto = %d, falso = %d", cierto, falso);
}
Parmetros
Formato: Cadena de caracteres, entre comillas dobles, que
especifica cmo va a ser la salida. Incluye caracteres y
especificaciones de formato.
Argumento: Indica las variables a escribir.
Ejemplo:
float pi=3.141596; // declara y asigna a la vez
printf("El nmero pi vale %f ,pi);
carcter de control %f
Especificaciones de formato
% [ancho] [.precision]
ancho: Mnimo nmero de posiciones reservadas para la
salida.
precisin: Mnimo nmero de posiciones reservadas para la
parte decimal.
funcion scanf ( )
Lee datos de la entrada estndar (teclado) , los interpreta
y los almacena en los argumentos. Incluye caracteres y
especificaciones de formato.
#include <stdio.h>
int main()
{
int num;
printf( "Introduce un nmero " );
scanf( "%i", &num );
printf( "Has tecleado el nmero%i\n", num );
return 0;
}
funcin getchar ( )
Si desea introducir un carcter por el teclado usamos la
funcin getchar
Esta espera a que el usuario introduzca un carcter por el
teclado.
Getchar saca por pantalla la tecla que hemos pulsado
#include <stdio.h>
#include <conio.h>
int main()
{
char letra;
printf( "Introduce una letra: " );
fflush( stdout );
letra = getchar();
printf( "\nHas introducido la letra: %c", letra );
return 0;
}
Operadores Relacinales
Los operadores relacionales se utilizan para comparar el
contenido de dos variables.
Operadores Relacinales
Operadores Relacinales
1.- Bucles
1.- Bucles
Los bucles que maneja C son:
For
While
Do While
La sintaxis es la siguiente:
for( valores iniciales ; condiciones ; incrementos )
{ conjunto de instrucciones a ejecutar en el bucle }
Ejemplo:
#include <stdio.h>
int main()
{ int i;
for ( i=0 ; i<100 ; i++ )
{ printf( "Hola\n" ); }
}
La sintaxis es siguiente:
while ( condicin )
{ bloque de instrucciones a ejecutar }
While quiere decir mientras. Aqu se ejecuta el bloque de
instrucciones mientras se cumpla la condicin impuesta en
while.
Ejemplo:
#include <stdio.h>
int main()
{ int contador = 0;
while ( contador<100 )
{ contador++;
printf( "Ya voy por el %i, parar enseguida.\n", contador ); } }
2.-Sentencias de Condicin
Ahora veremos cmo poder controlar totalmente el flujo de un
programa. Dependiendo de los valores de alguna variable se
tomarn unas acciones u otras.
Las sentencias de condicin son:
If
If Else
If Else If
Switch
2.1.-If
La palabra if significa si (condicional).
Su Sintaxis es el siguiente:
if ( condicin ) { instrucciones a ejecutar }
Cuando se cumple la condicin entre parntesis se ejecuta el
bloque inmediatamente siguiente al if (bloque instrucciones a
ejecutar).
2.1.-If
Ejemplo: Realizar un programa que pida un nmero, si el nmero es 10 se muestra un mensaje. Si no es 10
no se muestra ningn mensaje:
#include <stdio.h>
int main()
{ int num;
printf( "Introduce un nmero " );
scanf( "%i", &num );
if (num==10)
{ printf( "El nmero es correcto\n" ); } }
Como siempre, la condicin es falsa si es igual a cero. Si es
distinta de cero ser verdadera.
2.2.-If Else
El formato es el siguiente:
if ( condicin )
{
bloque que se ejecuta si se cumple la condicin
}
else
{
bloque que se ejecuta si no se cumple la condicin
}
2.2.-If Else
Con el if else tenemos un bloque adicional que slo se ejecuta si
no se cumple la condicin.
Ejemplo:
#include <stdio.h>
int main()
{ int a;
printf( "Introduce un nmero " );
scanf( "%i", &a );
if ( a==8 )
{ printf ( "El nmero introducido era un ocho.\n" ); }
else
{ printf ( "Pero si no has escrito un ocho!!!"\n" ); }
}
2.3.-If Else - If
La sintaxis es la siguiente:
if ( condicion1 )
{
bloque que se ejecuta si se cumple la condicion1
}
else if ( condicion2 )
{
bloque que se ejecuta si se cumple la condicion2
}
else if ( condicion3)
{
bloque que se ejecuta si se cumple la condicion3
}
2.3.-If Else - If
Ejemplo:
#include <stdio.h>
int main()
{ int a;
printf( "Introduce un nmero " );
scanf( "%i", &a );
if ( a<10 )
{ printf ( "El nmero introducido era menor de 10.\n" ); }
else if ( a>10 && a<100 )
{ printf ( "El nmero est entre 10 y 100"\n" ); }
else if ( a>100 )
{ printf( "El nmero es mayor que 100\n" ); }
printf( "Fin del programa\n" ); }
#include <stdio.h>
int main()
{ int a; int b;
printf("Introduce un nmero
");
scanf( "%i", &a );
b = ( a<10 ) ? 1 : 4 ;
printf ( "La variable 'b' toma
el valor: %i\n", b ); }
2.4.-Switch
El formato de la sentencia switch es:
switch ( variable )
{ case opcin 1:
cdigo a ejecutar si la variable tiene el valor de la opcin 1
break;
case opcin 2:
cdigo a ejecutar si la variable tiene el valor de la opcin 2
break;
default:
cdigo que se ejecuta si la variable es distinta a los anteriores
break; }
La sentencia switch sirve para elegir una opcin entre varias disponibles.
Ac no se debe cumplir una condicin ,sino el valor de una variable.
Dependiendo del valor se cumplir un caso u otro .
Con if-else
#include <stdio.h>
int main()
{ int num;
printf( "Introduce un nmero " );
scanf( "%i", &num );
if ( num==1 )
printf ( "Es un 1\n" );
else if ( num==2 )
printf ( "Es un 2\n" );
else if ( num==3 )
printf ( "Es un 3\n" );
else
printf ( "No era ni 1, ni 2, ni 3\n" );
}
Con switch:
#include <stdio.h>
int main()
{ int num;
printf( "Introduce un nmero " );
scanf( "%i", &num );
switch( num )
{ case 1:
printf( "Es un 1\n" );
break;
case 2:
printf( "Es un 2\n" );
break;
case 3:
printf( "Es un 3\n" );
break;
default:
printf( "No es ni 1, ni 2, ni 3\n" ); } }
Ejemplo SWITCH
/* Uso de la sentencia condicional SWITCH. */
#include <stdio.h>
main() /* Escribe el da de la semana */
{
int dia;
printf("Introduce el numero del da de la semana: ");
scanf("%d",&dia);
switch(dia){
case 1: printf("Lunes"); break;
case 2: printf("Martes"); break;
case 3: printf("Mircoles"); break;
case 4: printf("Jueves"); break;
case 5: printf("Viernes"); break;
case 6: printf("Sbado"); break;
case 7: printf("Domingo"); break;
}}