La Red de Conocimientos Pedagógicos - Aprendizaje de inglés - Programación en C para alumnos de primaria

Programación en C para alumnos de primaria

# include & ltstdio.h & gt

# include & ltstdlib.h & gt

# include & lttime.h & gt

//En el intervalo [ a, b] genera un número aleatorio

#Definición RANDOM(a, b) (rand()%((b+1)-(a)) + (a))

//Generar números enteros del 1 al 20. Si desea cambiar el rango aritmético, puede modificar los parámetros de esta macro.

# define GEN _ VALUE()RANDOM(1, 20)

int main()

{

int v1, v2 , t, r, a;

char op, ops[] = { '+', '-', ' * ', '/' }; símbolo) time(null)); //Inicializa la semilla del número aleatorio con la hora actual.

Printf("Por favor responda Ctrl+C para finalizar...\ n "

while(1)

{

v 1 = GEN _ VALUE(); // Genera aleatoriamente la primera operación.

v2 = GEN_VALUE(); // Genera aleatoriamente la segunda aritmética.

op = ops[RANDOM(0, 3)]; // Determina aleatoriamente qué operador es.

//Asegúrese de que la primera aritmética sea mayor que la segunda aritmética, elimine este juicio si no es necesario.

si(v 1 <v2)

{

t = v 1;

v 1 = v2;

p>

v2 = t;

}

//Si el operador es división y v1 no es divisible por v2, regenera la pregunta.

if(op = = '/' & & ampv1%v2!=0 )

Continuar;

//Calcular el resultado correcto

p>

Cambiar

{

caso '+':a =(float)v 1+(float)v2;

case ' -':a =(float)v 1-(float)v2;

case ' * ':a = (float)v 1 *(float)v2; p>

case '/':a =(float)v 1/(float)v2; break;

}

//Fórmula de salida

printf( "%d%c%d= ", v1, op, v2);

//Esperando resultados de entrada

scanf( "%d ", & ampr) ;

If (r == a)

Printf("¡Bingo! \ n \ n ");

Otro

Printf ("¡Error de respuesta! La respuesta correcta es:%d\n\n ", a);

}

}