tengo el siguiente codigo en el cual solo puedo introducir un pais y una capital, y necesito colocar varios ya que es un juego de aciertos y errores .
#include"stdio.h"
#include"string.h"
#define t 20
main()
{
int i,n=4,error=0,acierto=0;
char pais1[t]="mexico ";
char capital1[t]="distrito-federal";
char respuesta[t];
printf("cual es la capital de %s ? \n",pais1);
fflush(stdin),gets(respuesta);
if (strcmp(capital1,respuesta)==0)
{printf(" correcto\n");
acierto+=1;
}
else
{
printf("incorrecto\n");
error+=1;
}
printf(" \n marcador\n");
printf("numero de aciertos %i\n",acierto);
printf(" numero de errores %i\n",error);
#include <stdio.h> // fgets()
#include <string.h> // strcspn(), strcmp()
enum { N_PAISES = 10, N_CHARS = 10 };
int main(void) {
const char paises[N_PAISES][N_CHARS] = {
"Angola", "Egipto", "Lesoto", "Serbia", "Guinea",
"Grecia", "Brasil", "Ruanda", "Kosovo", "Chipre"
};
const char capitales[N_PAISES][N_CHARS] = {
"Luanda", "El Cairo", "Maseru", "Belgrado", "Conakri",
"Atenas", "Brasilia", "Kigali", "Pristina", "Nicosia"
};
char respuesta[N_CHARS];
int aciertos = 0;
int errores = 0;
for (int i = 0; i < N_PAISES; ++i) {
printf("Cual es la capital de %s? ", paises[i]);
fgets(respuesta, sizeof respuesta, stdin);
respuesta[strcspn(respuesta, "\r\n")] = '\0';
if (strcmp(respuesta, capitales[i]) == 0) {
printf("\t* Correcto *\n\n");
++aciertos;
} else {
printf("\t* Incorrecto *\n\n");
++errores;
}
}
printf(
" MARCADOR \n"
"Aciertos --> %i\n"
"Errores ---> %i\n",
aciertos, errores
);
return 0;
}