Académique Documents
Professionnel Documents
Culture Documents
Deber#5
Nombre:ManuelMacias
ID:L00358200
Fecha:7/11/2014
NRC:1390
6. Un progrma en C contiene las sentencias de declarcion:
int i, j;
long ix;
short s;
unsigned u;
float x;
double dx;
char c;
Escribir una funcin scanf() que realice cada uno delos siguientes numerales, suponiendo que todos
los enteros se leern como cantidades decimales:
a) Introducir los valores de i, ix, j, x, u, dx, c, s.
scanf (%d %d %i %d %d %d, & i, ix, j, s,);
scanf (%f, & x);
scanf (%d %d, & u, dx);
scanf (%c, c);
scanf (%d, & s);
b) Introducir los valores de i, j, x y dx, suponiendo que cada cantidad entera no exceda los cuatro
caracteres, la cantidad en punto flotante no excede los ocho caracteres y la cantidad de doble
precisin no excede los 15 caracteres.
scanf (%[3]d %[3]d %[7]f %[14]d,& i, j, x, dx);
c) Introducir los valores de i, ix, j, x y u, suponiendo que cada cantidad entera no excedo los cinco
caracteres, el entero largo no excede mas de doce caracteres y la cantidad en punto flotante no
excede los diez caracteres.
scanf (%[4]d %[11]d %[4]d %[9]d %d, & i, ix, j, x, u);
d) Introducir los valores de i, u y c, suponiendo que cada cantidad entre no excede mas de los nueve
caracteres.
scanf (%[8]d %[8]d, &i, u);
scanf (%[8]c, c);
e) Introducir los valores de c, x, dx y s, suponiendo que la cantidad en punto flotante o excede los
nueve caracteres, la cantidad en doble precisin no excede los 16 caracteres y el entero corto no
excede los cuatro caracteres
scanf (%c, c);
scanf (%[8]f %[15]d %[3]d, & x, dx, s);
7. Un programa en C contiene la siguiente sentencia de declaracin:
array texto:
a) suponiendo que la cadena de caracteres no contiene ningn carcter de espaciado.
scanf (%s, texto);
b) suponiendo que la cadena de caracteres solo contiene letras minsculas, espacio en blanco y un
carcter de nueva linea.
scanf (%[a-z,' ' , '\n']s, texto);
c) suponiendo que la cadena de caracteres solo contiene letras maysculas, dgitos, signos de dolar
y espacios en blanco.
Scanf (%[A-Z, 0-9, '$' , ' ']s, texto);
d) suponiendo que la cadena de caracteres contiene cualquier carcter salvo el asterisco para indicar
el final de la cadena.
Scanf (%[^*]s, texto);
10. Suponiendo que i, j y k son variables enteras, donde i representa una cantidad octal, j una
cantidad decimal y k una cantidad hexadecimal. Escribir una funcin printf() adecuada para cada
una de los siguientes enunciados:
a) Escribir los valores de i, j y k con una longitud de campo mnima de ocho caracteres por cada
valor.
printf (%8o %8d %8x, & i, j, k);
b) repetir el numeral a) con cada dato ajustado a la izquierda de su campo.
printf (%-8o %-8d %-8x, & i, j, k);
c) repetir el numeral a) con cada dato precedido de ceros o 0x.
printf (%8o0 %8d0 %8x0, & i, j, k);
11. Un programa en C contiene la sentencia de declaracin:
float x, y, z;
Escriir una funcion printf() para cada uno de los siguientes grupos de variables o expresiones,
utilizando el especificador de formato f para cada cantidad de punto flotente:
a) x, y, z
printf (%f, %f, %f, x, y, z);
b) (x + y), (x z)
printf ( %f, %f, (x + y), x z);
c) sqrt(x + y), fabs(x z)
printf (%f, %f, sqrt(x + y), fabs(x z);
d) x, y y z , con una longitud de campo mnima de ocho caracteres por cantidad.
printf (%6f, %6f, %6f, x, y, z);
f) squrt (x + y) y fabs (x z), con una longitud de campo mnima de 12 para la primera cantidad y 9
para la segunda cantidad.
printf (%12f, %9f, sqrt(x + y), fabs(x z));
g) x, y y z, con una longitud de campo mnima de ocho caracteres por cantidad, con cuatro cifras
decimales.
printf (%8.4f, %8.4f, %8.4f, x, y, z);
h) (x + y) y (x z), con una longitud de campo mnima de ocho caracteres por cantidad, con tres
cifras decimales.
printf (%8.3f, %8.3f, x +y , x - z);
i) sqrt (x + y) y fabs (x z), con una longitud de campo minima de 12 para la primera cantidad y 10
para la segunda. Presentar un maximo de cuatro cifras decimales en cada cantidad.
Printf (%12.4f, %10.4f, sqrt(x + y), fabs(x z);
j) Repetir los numerales anteriores utilizando el especificador de formato e.
Nota: e es formato de notacin cientfica.
12. Un progrma en C contiene las sentencias de declaracion :
int i,j;
long ix;
short s;
unsigned u;
float x;
double dx;
char c;
Escribir una funcin printf() para cada uno de los siguientes enunciados supngase que todos los
enteros se desean presentar como cantidades decimales:
a) Escribir los valores de i, j, x, u, dx, c, s.
printf (%d %d %f %d %d %d, & i, j, x, u, dx, s);
printf (%c, c);
b) Escribir los valores de i, j, x y dx, suponiendo que cada cantidad entera tiene una longitud de
campo mnima de cuatro caracteres y cada cantidad de punto flotante se presenta en notacin
exponencial con un total de al menos 14 caracteres y no mas de 8 cifras decimales.
printf (%4d %4d %14.8f %d, & i, j, x, dx);
c) Repetir el numeral a) visualizando cada cantidad en una cadena.
printf (%d %d %f %d %d %d, & i, j, x, u, dx, s);
printf (%c, c);
d) Escribir los valores de i, ix, j, x y u, suponiendo que cada cantidad entera tiene una longitud de
campo mnima de cinco caracteres y el entero largo tiene una longitud de campo mnima de 12
caracteres y la cantidad de punto flotante tiene al menos 10 caracteres con un mximo de 5 cifras
decimales, no incluir exponente.
printf (%5d %12d %5d %10.5f %d, & i, ix, j, x, u);
e) Repetir el numeral a) visualizando las tres primeras cantidades en una linea, seguidas de una
linea en blanco y las otras cantidades en la linea siguiente.
printf (%d %d %f\n\n %d %d %d, & i, j, x, u, dx, s);
printf (%c, c);
f) Escribir los valores de i, u y c con una longitud de campo mnima de 6 caracteres para cantidad
entera, y separar con tres espacios en blanco cada cantidad.
printf (%6d %d, & i, u);
printf (%c, c);
g) Escribir los valores de j, u y x, visualizando las cantidades enteras con una longitud de campo
mnima de cinco caracteres, y la cantidad en punto flotante utilizando el especificador de formato f.
Con una longitud de campo mnima de 11 caracteres y mximo de 4 cifras decimales.
printf (%5d %d %11.4f, &j, u, x);
h) Repetir el numeral g) con cada dato ajustado a la izquierda dentro de su campo.
printf (%-5d %-d %-11.4f, &j, u, x);
i) Repetir el numeral g) anteponiendo el signo (+ o -) de cada dato.
printf (%5d %d %11.4f, &j, u, x);
j) Repetir el numeral g) rellenado el campo de cada cantidad entera con ceros.
printf (%05d %0d %011.4f, &j, u, x);
k) Repetir el numeral g) mostrando el punto decimal a la derecha del valor de x.
printf (%5d %d %11.4f, &j, u, x);