printf
sintaxis de llamada de una función f
:
f(parametro1, parametro2, ... );
Si no hay parámetros:
f();
printf
requiere por lo menos un parámetro: una cadena de carácteres:
printf("Hola!");
Si hay especificadores de conversión, hay que hacer la llamada con un parámetro más para cada especificador:
printf("El contador vale %d", a);
Como la llamamos con parámetros enteros, usaremos el especificador de conversion %d
(decimal):
int a = 5;
int b = 9;
printf("a vale %d y b vale %d", a, b);
printf("%d %d %d %d\n", 10, 20, 30, 40);
for
La palabra-clave for
permite definir bucles que manejan alguna variable que sirve como índice para controlar la repetición de un bloque de código.
for (/* inicialización */; /* condición */; /* incremento */) {
/* código a ejecutar */
}
int i;
for (i=0; i < 10; i = i + 1) {
printf("%d\n", i);
}
Nota: En C, la sentencia i = i + 1
puede escribirse en forma más reducida como i++
. Esta forma se utiliza más comúnmente en el bucle for:
int i;
for (i=0; i < 10; i++) {
printf("%d\n", i);
}
for
Definir un programa for.c que tenga que mostrar la salida siguiente.
0 1 2 3 4 5 6 7 8 9
0 2 4 6 8 10 12 14 16
4 9 14 19 24 29 34 39
50 49 48 47 46 45 44 43 42 41
Recordatorio:
for (/* inicialización */; /* condición */; /* incremento */) {
/* código a ejecutar */
}
Una variable es constituida de:
Esto es una declaración de la variable a:
int a;
Por ejemplo si escribimos la declaración de variable siguiente:
int x = 12;
Entonces en algun lado de la memoria tendremos el valor 12
guardado, y se accede a ese valor a traves del nombre x
.
valor dirección
----- ----
| ... | 2022
+-------+
x ----> | 12 | 2023
+-------+
| ... | 2024
Cuando aparece x
en una expresión, se evalua su valor (acá 12):
printf("%d\n", x);
Recordatorio:
| ... |
+-------+
x ----> | 12 |
+-------+
| ... |
Salida del programa:
$ 12
Se cambia el valor de una variable var
al valor de la expresión EXPR
escribiendo a = EXPR
.
Esta operación se llama asignación de valor.
1 2 3 4 5 6 |
|
Salida?
sentencia | a | salida |
---|---|---|
int a = 10; |
. | |
printf("a vale %d\n", a); |
. | |
a = 55; |
. | |
printf("a vale %d\n", a); |
. | |
a = a + 1; |
. | |
printf("a vale %d\n", a); |
. |
for ( a = 0; a < 2; a = a + 1){
printf("%d", a);
}
printf("a vale %d", a);
sentencia | a | salida |
---|---|---|
a = 0; |
. | |
a < 2 |
||
printf("%d", a); |
. | |
a = a + 1 |
. | |
a < 2 |
||
printf("%d", a); |
. | |
a = a + 1 |
. | |
a < 2 |
||
printf("a vale %d", a); |
. |
Una expresión aritmética en C se construye a partir de:
Ejemplos:
a
10 + 20
x + 1
(x + a + 10) * b
x % 10
sentencia | a | b |
---|---|---|
int a = 5; |
. | |
int b = 3; |
. | |
a = a - 1; |
. | |
b = b + a; |
. | |
b = a + 1; |
. | |
a = b % 5; |
. | |
b = a % 2; |
. |
Agregar a for.c los bucles for
necesarios para mostrar:
0 1 2 3 4 5 6 7 8 9
0 2 4 6 8 10 12 14 16
4 9 14 19 24 29 34 39
50 49 48 47 46 45 44 43 42 41
0 1 2 3 0 1 2 3 0 1 2 3
3 0 1 2 3 0 1 2 3 0 1 2
(En total el programa debe mostrar 6 lineas.)
Entregar este programa.
Averiguar que compila sin error ni warning con el comando:
$ gcc -Wall for.c