Daniel Garcia

sábado, julio 17, 2010

ENTRADA/SALIDA EN C

 

Función printf()

Sirve para imprimir por pantalla. Supongamos que queremos mostrar el contenido de la variable "x" por pantalla:

printf( '%i', x );

Suponiendo que x valga 10 (x=10) en la pantalla tendríamos:

10

Para ver el contenido de dos variables, por ejemplo x e y, podemos hacer:

printf( '%i %i', x, y );

resultado (suponiendo x=10, y=20):

10 20

También podemos mezclar texto con enteros:

printf( 'El valor de x es %i, ¡que bien!\n', x );

que quedará como:

El valor de x es 10, ¡que bien!

Como vemos %i al imprimir se sustituye por el valor de la variable.

Salida por pantalla y entrada por teclado.

En C++ además de las funciones printf() y scanf(), que siguen estando vigentes, se pueden utilizar los operadores cin y cout. Para utilizar estos nuevos operadores es necesario incluir la librería iostream.h con la instrucción #include <iostream.h>. Así en un programa en C habría que hacer algo de este estilo:

char nombre;

int num=2;

printf ('Introduzca el nombre del fichero %d: ', num);

scanf (' %s', nombre)

En C++ podría escribirse así:

char nombre;

int num=2;

cout << 'Introduzca el nombre del fichero ' << num << ': ';

cin >> nombre;

Es importante darse cuenta de que ahora ya no hace falta especificar el tipo de dato que va a ser impreso o leído, asociándolo con un formato determinado. Es el propio programa el que decide el tipo de dato en tiempo de ejecución gracias a que estos operadores están sobrecargados de tal manera que admiten tanto los tipos predefinidos como aquellos tipos de datos definidos por el usuario.

Códigos de escape.

Se utilizan para producir un tabulador, retorno de carro, movimiento del cursor hacia atrás, incluso un pitido. Siempre comienzan por un ' \ ' seguido de una letra. Algunos son:

\n Newline
\r Retorno de carro
\t Tabulador horizontal
\v Tabulador vertical
\b Espacio hacia atrás

ESTRUCTURAS DE CONTROL EN C

Bloques if

La sintaxis general de un bloque if es:

if( expresión ) {

statement ;

...

}

La expresión debe ir entre paréntesis y dar un valor numérico. Si el valor es no cero, las expresiones que van entre llaves son ejecutadas.

También se puede utilizar un bloque if-else:

if( expresión ) {

contenidos bloque 1 ;

}

else { contenidos bloque 2 ;

}

Bucles

En C++ hay tres clases de bucles:

Bucle while

while( expresión ) {

statement ; // cuerpo del bucle

...

}

El bucle while ejecuta el cuerpo del bucle repetidamente mientras la expresión sea distinta de cero (sea verdadera). El test se hace antes de ejecutar el cuerpo del bucle, lo que significa que se éste se ejecuta cero o más veces.

Se debe utilizar un bucle while cuando es posible que el cuerpo del bucle no sea ejecutado. Por ejemplo, para leer y procesar el contenido de un fichero de tamaño desconocido.

Bucle do-while

do {

statement ; // cuerpo del bucle do-while

...

} while ( expresión );

El cuerpo del bucle se ejecuta repetidamente mientras la expresión es distinta de cero (verdadera). El test se hace después de ejecutar el cuerpo del bucle, por lo que éste se ejecuta al menos una vez.

Debe utilizarse este tipo de bucles cuando el cuerpo debe ser ejecutado al menos una vez. En particular, en aquellos casos en que el bucle calcula un valor que es necesario para la condición de terminación. Por ejemplo, los cálculos iterativos que terminan cuando se da una condición de convergencia, cuando una expresión calculada dentro del bucle es menor que un determinado valor.

Bucle for

for ( init-statement; expresión de continuación; expresión de incremento ) {

statement ; // cuerpo del bucle for

...

}

break y continue

break termina la ejecución del bucle en que se encuentra. continue hace que el bucle pase directamente a la siguiente iteración.

Ambos comandos deben utilizarse lo menos posible

0 comentarios: