ENUNCIADO DEL EXAMEN Pregunta Nº 1.− (15 puntos) pepe.dat

Anuncio
ENUNCIADO DEL EXAMEN
Pregunta Nº 1.− (15 puntos)
Este programa debería modificar el sueldo de todos los empleados del fichero pepe.dat, aumentándoles 1000
pesetas si su sueldo es superior a 5.000 y el campo nombre contiene al menos un carácter.
Verifica y corrige TODOS los errores SINTÁCTICOS que impedirían que este programa compilase y
funcionase correctamente.
include <conio.h>
void main (void) {
file *pf;
struct reg {
char nombre[10];
int paga;
}
struct reg r;
pf = fopen (`a:pepe.dat, rw);
if (!pf) {
fread (r, sizeof(r), 1,&pf);
while (!feof(pf)) {
if (r.paga > 5000 && strlen(r.nombre)) {
r.paga += 1000;
fseek (pf, −1, SEEK_CURR);
fwrite (pf, sizeof(r), 1, &r);
}
fread (r, sizeof(r), 1,&pf);
}
fclose(r);
1
}
}
Pregunta Nº 2.− (5 puntos)
Suponiendo que en una función se ha recibido un puntero T que apunta al primer elemento de una tabla de 2
dimensiones de 4 * 6 elementos enteros. Dar la instrucción para mostrar por pantalla el contenido del
elemento 2,3.
Pregunta Nº 3.− (5 puntos)
Suponiendo las siguientes instrucciones:
char C[15];
gets(C);
Pon la instrucción (UNA SOLA) que muestre los 3 últimos caracteres de la cadena.
Pregunta Nº 4.− (5 puntos)
Escribe las instrucciones que aceptarían 20 valores enteros en un vector V que es campo de un registro R, del
tipo struct datos.
Pregunta Nº 5.− (5 puntos)
Si el registro R de la pregunta anterior hubiera sido pasado por referencia a una función, escribe la instrucción
que permitiría asignar el valor 1500 al cuarto elemento del vector V.
2
Descargar