Red de conocimiento informático - Computadora portátil - Preguntas sobre programación en lenguaje C

Preguntas sobre programación en lenguaje C

Para este tipo de problema similar al DO, la entrada y la salida no pueden contener caracteres redundantes; de lo contrario, el envío fallará. La entrada y la salida deben realizarse estrictamente de acuerdo con los requisitos de la pregunta. Análisis de la primera pregunta:

Esta pregunta trata sobre cómo encontrar el valor promedio. No hay ninguna condición (marca) para finalizar la entrada. Esta condición generalmente tiene muchas formas. Por ejemplo, puede ingresar un valor determinado. para finalizar la entrada (como -1). O ingrese primero un ?n y luego use un bucle para ingresar ?n? Aquí, ingrese -1 para finalizar la entrada para escribir el código.

La idea de todo el tema sigue siendo relativamente clara.

Primero encuentra el número de personas en la clase y el promedio, luego encuentra el número de personas con el número más alto y el promedio, luego encuentra el número de personas con el número más bajo y el promedio.

Debe prestar atención al consejo de la última línea aquí. Si el promedio es un número entero, se debe generar un número entero. Por ejemplo, si el promedio es 98,00, se debe generar 98. , se deben generar dos decimales.

Los detalles son el problema de introducir datos. Por ejemplo, si se ingresa -1, el número de personas y el valor promedio son todos 0. Si los puntajes ingresados ​​​​son los mismos, entonces todos son mayores o iguales que el puntaje promedio. En este momento, el número de personas cuyas puntuaciones son inferiores al puntaje promedio de toda la clase es 0. Según la fórmula de puntaje promedio (. puntuación promedio = puntuación total ÷ número de personas), aparece un divisor en este momento es 0?. El proceso de resolución de la primera pregunta:

Declarar una matriz (ya sea entera o de punto flotante) para guardar la puntuación de entrada.

Al ingresar puntajes, se puede acumular el puntaje total de la clase y el tamaño de la clase.

Calcule el puntaje promedio de la clase en función del puntaje total de la clase y el tamaño de la clase.

Recorra la matriz nuevamente y cuente el número de personas y las puntuaciones por encima o por debajo del promedio.

Encuentra la puntuación media de los dos lotes.

Finalmente genera los datos.

Código de prueba de la primera pregunta

Resultado de la prueba de la primera pregunta Código de prueba de la primera pregunta:

#include

int main ()

{

int a[1000] = {0}, L = 0, mid = 0, R = 0;

suma flotante = 0 , Lsum = 0, Rsum = 0;

float Laver = 0, aver = 0, Raver = 0;

while (a[mid] != -1)

{

suma += a[mid];

scanf("%d", &a[++mid]);

}

if (mid > 1) aver = suma / --mid;

else --mid;

for (int i = 1; i <= mid; i++)

{

if (a[i] < aver)

{

R++;

Rsum += a[i];

}

}

Lsum = suma - Rsum;

L = mid - R;

si (L > 0) Laver = Lsum / L;

si (R > 0) Raver = Rsum / R;

printf("%d ", mid);

if (aver == (int)aver) printf("%.f\n", aver);

else printf("%.2f\n", aver);

printf("%d ", L);

if (Laver = = (int)Laver) printf("%.f\n", Laver);

else printf("%.2f\n", Laver);

printf("%d ", R);

if (Raver == (int)Raver) printf("%.f\n", Raver);

else printf("%.2f\n", Raver);

return 0;

}Análisis de la segunda pregunta:

Esta pregunta puede resolverse íntegramente con matemáticas. Si se puede resolver con matemáticas, lo mejor es usar matemáticas para resolverlo, ya que se ejecuta rápidamente.

La variable ?a? representa 0 ~ 6, también representa lunes ~ domingo.

La variable ?n? son los siguientes ?n?

a + 1 +?n es en realidad el número total de días. El resultado dividido por 7? es ¿cuántas semanas hay en 1 semana? es el número de días que se pueden utilizar en la frecuencia del ordenador. Pero considerando el problema del resto, si el resto es 5 o 6, significa que todavía hay otra posibilidad de subir a la máquina. El proceso de operación de la segunda pregunta:

Declarar variables y datos de entrada.

int suma = a + 1 + n? Encuentra el número total de días.

int cnt = sum / 7? Encuentra el número de veces en la máquina.

if (sum % 7 >= 5) cnt++, pregunta si hay otra posibilidad de acceder a la computadora.

Resultados de salida.

Resultado de la prueba de la segunda pregunta Código de la prueba de la segunda pregunta:

#include

int main()

{

int a, n;

scanf("%d %d", &a, &n);

int suma = a + 1 + n

int cnt = suma / 7;

if (suma % 7 >= 5) cnt++;

printf("%d", cnt);

devuelve 0;

}