Urgente====Experimento de programación en lenguaje C: respuestas a los ejercicios
1.5 Consulte el ejemplo de este capítulo y escriba un programa en C para generar la siguiente información:
**** **********
¡Muy bien!
************
Solución:
main()
{
printf(" ************ \n");
printf("\n");
printf(" Muy bueno !\n");
printf("\n");
printf("************\n");< / p>
}
1.6 Escriba un programa que ingrese tres valores a b c y genere el valor más grande.
Solución: main()
{int a, b, c, max;
printf("Ingrese tres números a, b, c:\ n");
scanf("d, d, d", amp; a, amp; b, amp; c);
max=a;
si(maxlt;B)
max=b;
si(maxlt;C)
max=c;
printf("El número máximo es: d", max);
}
Capítulo 3
3.3 Representado por números octales y números hexadecimales respectivamente Los siguientes números:
(1)10 (2)32 (3)75 (4)-617
(5)-111 (6)2483 (7)-28654 (8) 21003
Solución: diez, ocho, sexto
(10)=(12)=(a)
(32)=(40)= 20
(75)=(113)=4b
(-617)=(176627)=fd97
-111=177621=ff91
2483=4663=963
-28654=110022=9012
21003=51013 =520b
3.5 ¿Cuál es la diferencia entre las constantes de caracteres y las constantes de cadena?
Solución: Las constantes de caracteres son caracteres encerrados entre comillas simples. Una constante de cadena consta de cero o más caracteres
entre comillas dobles, con un símbolo de terminación "\0" almacenado automáticamente al final de la cadena.
3.6 Por favor escriba los resultados de ejecutar el siguiente programa:
#include
void main()
{
char c1='a', c2='b', c3='c', c4='\101', c5='\116';
printf(" ac bc\ tcc\ tabc\n", c1, c2, c3);
printf("\t\bc c\n", c4, c5);
Solución: El resultado de el programa es:
aabb cc abc
A N
3.7 Traducir "China" a una contraseña. La regla es: reemplace la letra original con la cuarta letra después de la letra original,
Por ejemplo, si la cuarta letra después de la letra "A" es "E", reemplace "A" con "E" . Por lo tanto, "China" debería traducirse como "Glmre".
Escriba un programa para hacer que c1, c2, c3, c4 y c5 se conviertan en 'G', '1' y 'm' respectivamente asignando valores iniciales y
salida, 'r', 'e'.
main()
{char c1="C", c2="h", c3="i", c4='n', c5='a';
c1 =4;
c2 =4;
c3 =4; c5 =4;
printf("La contraseña es cccccc\n", c1, c2, c3, c4, c5);
}
3.8 ¿Se puede cambiar el ejemplo 3.6 a? el siguiente contenido:
#include
void main()
{
int c1, c2 (originalmente char c1, c2; )
c1=97;
c2=98;
printf("cc\n", c1, c2); printf ("dd\n",c1,c2);
}
Solución: Sí. Porque los tipos de números enteros y caracteres tienen el mismo impacto en el rango de caracteres que se pueden generar.
3.9 Encuentra el valor de la siguiente expresión aritmética.
(1)x a3*(int)(x y)2/4=2.5(x=2.5, a=7, y=4.7)
(2)(flotante) (a b)/2 (int)x(int)y=3.5(a=2, b=3, x=3.5, y=2.5)
3.10 Escribe los resultados del siguiente programa.
Resultados de ejecutar el programa:
#include
void main()
{
int i, j, m, n;
i=8;
j=10;
m=
n=j; > printf("d,d,d,d\n",i,j,m,n);
}
Solución: Resultado: 9, 11, 9, 10
Capítulo 4
4.4 a=3, b=4, c=5, x=1.2, y=2.4, z=-3.6, u=51274, n=128765. , c1='a', c2='b'. Piense en el siguiente formato de salida y resultados
Para obtener el siguiente formato de salida y resultados, escriba el programa que requiere la salida de la siguiente manera:
a= 3 b= 4 c= 5
x=1.200000, y=2.400000, z=-3.600000
x y= 3.60 y z=-1.20 z x =-2,40
u= 51274 n= 128765
c1='a' o 97(ASCII)
c2='B' o 98(ASCII)
Solución:
main()
{
int a, b, c
long int u, n; <
flotante x, y, z;
char c1, c2
a=3;
x =1,2; y=2,4;
c2='b';
printf("\n");
printf("a=2d b=2d c=2d\n", a, b, c
<); p>printf( "x=8.6f, y=8.6f, z=9.6f\n", x, y, z);printf("x y=5.2f y= z=5.2f z x= 5.2f\n ", x y, y z, z x);
printf("u=6ld n=9ld\n", u, n);
printf("c1= 'c' o d(ASCII)\n", c1, c2);
printf("c2 ='c' o d(ASCII)\n", c2, c2);
}
4.5 Por favor escriba el resultado del siguiente programa.
Resultado:
57
5 7
67.856400, -789.123962
67.856400, -789.123962 p> p>
67.86, -789.12, 67.856400, -789.123962, .67.856400, -789.123962
6.785640e 001, -7.89e 002
A, 65, 101, 41
1234567, 4553207, d687
65535, 17777, ffff, -1
COMPUTADORA, COM
4.6 Utilice el siguiente scanf función de entrada de datos, hacer a=3, b=7, x=8.5, y=71.82, c1='A', c2='a',
Pregunte cómo ingresar en el teclado.
main()
{
int a, b;
float x, y
char; c1, c2;
scanf("a=d b=d,amp;a,amp;b);
scanf("x=f y=e",amp;x, amp; y);
scanf(" c1=c c2=c", amp; c1, amp; c2);
}
Solución: Sí Escribe lo siguiente en el teclado:
a=3 b=7
x=8.5 y=71.82
c1= A c2=a
Nota: Cuando se utilizan una o más funciones scnaf en la frontera, el "Entrar" ingresado al final de la primera línea de entrada será absorbido por la segunda
función scanf, por lo que en la segunda / Se debe dejar un espacio después de las comillas dobles de la tercera función scnaf para compensar el "Enter" ingresado en la línea anterior
Si no existe dicho espacio, se producirá un error de acuerdo con los datos de entrada anteriores , Y al lector solo le quedará un
concepto inicial, y luego podremos entenderlo mejor
4.7 Utilice la siguiente función scanf para ingresar datos, de modo que a= 10, b=20, c1='A', c2='a', x=1.5, y=-
3.75, z=57.8,
Cómo ingresar datos en el teclado
scanf(" 5d5d5dcff*f f", a, b, c1, c2, y, z);
Solución:
main()
{
int a, b;
flotante x, y, z;
char c1, c2;
scanf("5d5dcccff",amp;a,amp;b,amp;c1,amp;c2,amp;x,amp;y,amp;z);
}
Entrada en tiempo de ejecución:
10 20Aa1.5 -3.75 1.5, 67.8
Nota: Al escribir ayb de acuerdo con los requisitos del formato 5d, escriba tres antes de escribir 10 y 20 espacios. *f
se utiliza para deshabilitar la asignación. Cuando se escribe el número aleatorio 1.5 correspondiente a *f, el valor no
se asignará a ninguna variable.
4.8 Establece el radio del círculo r=1.5, la altura del cilindro h=3, la circunferencia del círculo, el área del círculo, el área de la superficie de la esfera, el volumen de la esfera y el volumen del cilindro.
Scanf ingresa datos y genera resultados de cálculo. La salida requiere una descripción de texto y dos decimales. Por favor compila
programa. amperio; r, amperio; h);
l=2*pi*r
s=r*r*pi;
sq=4* pi*r*r;
vq=4.0/3.0*pi*r*r*r;
vz=pi*r*r*h;
printf("La circunferencia del círculo es: =6.2f\n", l);
printf("El área del círculo es: =6.2f\n", s);
printf("El área de la superficie del círculo es: =6.2f\n", sq
printf("El volumen del círculo es: =6.2f\n"); , vz);
}
4.9 Ingrese la temperatura en unidades Fahrenheit y requiera salida en unidades Celsius. La fórmula es C=5/9(F-32), y la salida. debe tener texto instrucciones,
Toma dos decimales.
Solución: main()
{
float c, f;
printf("Ingrese una temperatura en Fahrenheit: \ n");
scanf("f",amp; f);
c=(5.0/9.0)*(f-32);
printf("La temperatura Celsius es: 5.2f\n", c);
}
Capítulo 5 Operaciones lógicas y estructuras de selección basada en criterios
5.4 tiene tres números enteros a, b, c se ingresan desde el teclado respectivamente y se emite el más grande.
main()
{
int a, b, c;
printf("Ingrese tres números: ");
scanf("d,d,d",amp;a,amp;b,amp;c);
if(alt;B)
if(blt; C)
printf("max=d\n", c
else
printf("max=d\n", b);
si no(alt; C)
printf("max=d\n", c);
si no
printf ("max-d\n",a);
}
Método 2: Usar expresiones condicionales.
main()
{int a, b, c, termp, max;
printf(" Ingrese A, B, C: ");
scanf("d,d,d",amp;a,amp;b,amp;c);
printf("A= d,B=d,C= d\n",a,b,c);
temp=(agt;b)?a:b;
max=(tempgt;c)?temp:c;
printf("El número más grande en A, B, C es d,", max
}
5 main()
{int x, y;
printf("Ingrese x:");
scanf("d", amp; x);<
if(xlt;1)
{y=x;
printf("X-d,Y=X=d\n",x,y);
}
si no(xlt; 10)
{y=2*x-1;
printf(" X=d, Y =2*X-1=d\n",x,y);
}
else
{y=3*x-11;
printf("X=5d, Y=3*x-11=d\n", x, y);
}
}
(Ejercicio 5-6:) ¡Lo escribí yo mismo! ¡Ejecute con éxito! Diferentes personas tienen diferentes algoritmos, ¡estas respuestas son solo como referencia! 818pp.com
# include
void main()
{
float s, i;
char a;
scanf("f",amp;s);
while(sgt;100||slt;0);
(sgt; 100||slt;0);
Esta es la primera vez que escribo un algoritmo. lt; 0)
{
printf("¡Error de entrada! ¡Error!");
scanf("f",amp;s); p>
p>
}
i=s/10;
cambiar((int)i)
{
caso 10 :
caso 9: a='A';
caso 8: a='B'; 7: a=' C';romper;
caso 6: a='D';romper;
caso 5:
caso 4:<
caso 2:
caso 1:
caso 0: a='E';
}
printf("c" , a);
}
/5.7 Dado un entero positivo de no más de 5 dígitos, los requisitos son: 1. Averiguar cuántos dígitos tiene. 2. Imprime cada número por separado Dígitos imprime cada dígito 3.
Imprime cada dígito en orden inverso. Por ejemplo, si el número original es 321, se debe generar 123.
main()
{
long int num;
int indiv, diez, centenas, alojado, diezmil, lugar;
printf("Ingrese un número entero (0-99999): ");
scanf("ld", amp; num;
if(numgt); ;9999)
lugar=5;
si no(numgt;999)
lugar=4;
si no(numgt ; 99)
lugar=3
else if(numgt; 9)
lugar=2
else lugar=1; ;
printf("lugar=d\n", lugar);
printf("Cada dígito es:");
ten_thousand=num/10000 ;
mil=(núm-tenmil*10000)/1000;
cien=(núm-tenmil*10000- mil*1000)/100;
diez=(núm-tenmil*10000-mil*1000-cien*100)/10;
indiv=núm-tenmil*10000-mil* 1000-cien*100-diez*10; >
cambiar(lugar)
{caso 5: printf("d,d,d,d,d,d",tenousand,mil,cientos,diez,indiv);
printf("\n los números en orden inverso son: ");
printf("dddddddd\n", indiv, ten, centenas, miles, tenousand
); break;
caso 4: printf("d,d,d,d",miles,centenas,diez,indiv);
printf("/n el orden numérico inverso es: ");
printf("ddddd\n",indiv,diez,centenas,miles);
romper;
caso 3: printf("d , d, d\n", centenas, diez, indiv);
printf("\n el orden numérico inverso es: ");
printf("ddd\n", indiv, ten, centenas);
caso 2: printf("d, d\n", ten, indiv);
printf("\n el orden numérico inverso es:" );
printf("dd\n", indiv, diez);
caso 1: printf("d\n", indiv);
printf("(n) los números inversos son: ");
printf("d\n",indiv);
}
}
5.8
1.if declaración
main()
{long i;
bono flotante, bon1, bon2, bon4, bon6, bon10;
bon1=100000 *0.1;
bon2=bon1 100000*0.075;
bon4=bon2 200000*0.05;
bon6=bon4 200000*0.03;
bon10=bon6 400000*0.015;
scanf("ld",amp;i);
if(ilt;=1e5)bonus=i*0.1;
else if(ilt;=2e5) bonus=bon1 (i-100000)*0.075;
else if(ilt;=4e5)bonus=bon2 (i-200000)*0.05;
else if(ilt;=6e5)bonus=bon4 (i-400000)*0.03
else if(ilt;=1e6)bonus=bon6 (i-600000)*0.015; ;
else bonus=bon10 (i-1000000)*0.01;
printf("bonus=10.2f",bonus);
}
Programa usando la instrucción switch
main()
{long i;
bono flotante, bono1, bon2, bon4, bon6, bon10 <; /p>
int rama;
bon1= 100000*0.1;
bon2=bon1 100000*0.075;
bon4=bon2 200000*0.05 ;
bon6=bon4 200000*0.03;
bon10=bon6 400000*0.015
scanf("ld",amp;i);
branch=i/100000;
if(branchgt;10)branch=10;
cambiar(rama)
{caso 0: bonificación = i*0.1; descanso;
caso 1: bono=bon1 (i-100000)*0.075; descanso;
caso 2:
caso 3: bono =bon2 (i-200000)*0.05; descanso;
caso 4:
caso 5: bono=bon4 (i-400000)*0.03; descanso;
Ejemplo seis :
Ejemplo siete
Ejemplo ocho:
Ejemplo nueve: bonus=bon6 (i-600000)*0.015;
Ejemplo 10: bono=bon10 (i-1000000)*0.01;
}
printf("bonus=10.2f", bono);
}
{t=a; a=d; d=t;}
si(bgt;c)
{t
=b; b=c; c=t;}
si(bgt;d)
{t=b; d=t;}
if(cgt;d)
{t=c;c=d;d =t;}
printf("\nLos resultados de la clasificación son los siguientes:\n ") ;
printf(" d d d d d \n", a, b, c, d);
}
5.10 torre
main ()
{
int h=10;
flotante x, y, x0=2, y0=2, d1, d2, d3, d4; p>
printf("Ingrese un punto (x, y): ");
scanf("f, f", amp; x, amp; y
<); p> d1=(x-x0)*(x-x0) (y-y0)( y-y0);d2=(x-x0)*(x-x0) (y y0) (y y0);
d3=(x x0)*(x x0) (y-y0)*(y-y0);
d4=(x x0)*( x x0 ) (y y0)*(y y0);
if( d1gt;1 amp;amp; d2gt;1 amp;amp; d3gt;1 amp;amp; d4gt;1)
h=0;
printf("La altura de este punto es d", h);
}