1) (1.pto.) Determina
lo
que
imprime el siguiente programa (debes dejar trazado): int x[6]={1,2,3,4,5,6}; main(){ int i, s=0; for(i=0; i<6; i=i+1){ x[i]=x[i]+s; s=x[i]; } printf("%i\n",s); } imprime: 21 el trazado: i | s | x[0] | x[1] | x[2] | x[3] | x[4] | x[5] |
2)
(1
pto.)
Explique si eligiendo valores adecuados para inicializar el
arreglo puede el siguiente programa imprimir: menor: 1 int r[2][2]={-------}; main(){ int i,j,aux, menor =0; for(i=0;i<2;i++){ for(j=0;j<2;j++){ if (r[i][j]<menor) { aux=menor; menor=r[i][j]; r[i][j]=aux; } } } printf("menor: %i\n",menor); } Respuesta: no existe ninguna posibilidad que imprima "menor: 1". eso significa que en el arreglo debería estar como menor elemento el número uno. Sin embargo el valor inicial siempre va a ser menor, es decir: cero
|
3)
Determina lo que imprime el siguiente programa (debes dejar trazado): int a=0; void haceAlgo(int x, int y){ if (x > y) a =a+y; else if (x <y) a = a+x; else a=x - y; } main(){ haceAlgo(5, 4); haceAlgo(5, 4+a); printf("el valor de a es: %i\n", a); } imprime: el valor de a es: 9 el trazado: a | x | y ------+----+------- 0 | | | 5 | 4 4 | | +----+------ | 5 | 8 9 | | |
4)
(1 pto.) Construye la
tabla de trazado (ruteo) y escribe el contenido de
z[][], del siguiente programa:
#include <stdio.h> |
5)
(1 pto.)
Marca
con una x la(s) líneas(s) del programa que se ejecuta(n)
para
los valores de edad que se
indican en cada columna en la tabla:
|
5) (1
pto.) Crear el cuerpo de la
función que compara dos mitades de un arreglo que tiene un
numero par de elementos (espejo, palíndrome). La función
debe retornar un entero con el resultado: 0, si son distintos; 1 si son iguales. Ejemplo: float x[8]={1.8, 1.7, 1.6, 1.5, 1.5, 1.6, 1.7, 1.8}; int sonIguales(){ int i; for(i=0;i<4;i++){ if(x[i]!=x[7-i])return 0; } return 1; } main(){ int x; x=sonIguales(); } x debe tener: 1 |