chcę zrobić prosty quiz z użyciem zmiany kolorów i przesunięciem kursora. ma wyświetlać pytanie, pobrać odpowiedz, pokazać czy prawidłowa, czy nie, poczekać 2 sekundy, wyczyścić ekran i wyświetlić kolejne pytanie. jednak po pierwszym pytaniu i poczekaniu 2 sekund nie pobiera już kolejnych odpowiedzi, ani nie czyści wcześniejszego pytania. jak to zmienić?
#include <stdio.h>
#include <unistd.h>
#define gotoxy(x,y) printf("\033[%d;%dH", (y), (x))
#define clear() printf("\033[H\033[J")
int main()
{
int licznik = 0;
char odp,odp2;
printf("\x1b[45m\nPytanie 1/5: Stolica Hiszpani?");
printf("\x1b[0m\n");
printf("\x1b[35m\n");
printf(
"a. Madryt\n"
"b. Sevilla\n"
"c. Barcelona\n"
);
printf("\x1b[45m\nodpowiedz:\n"
" --- \n"
"| |\n"
" --- ");
gotoxy(3,11);
scanf("%c", &odp);
printf("\x1b[0m\n");
if(odp == 'a')
{
printf("\x1b[32m\nprawidlowa odpowiedz!\n");
licznik++;
}
else
{
printf("\x1b[31m\nzla odpowiedz!\n");
}
sleep(2);
clear();
printf("\x1b[45m\nPytanie 2/5: Nazwisko prezydenta Polski?");
printf("\x1b[0m\n");
printf("\x1b[35m\n");
printf(
"a. Kaczynski\n"
"b. Komorowski\n"
"c. Duda\n"
);
printf("\x1b[45m\nodpowiedz:\n"
" --- \n"
"| |\n"
" --- ");
gotoxy(3,11);
scanf("%c", &odp);
printf("\x1b[0m\n");
if(odp == 'c')
{
printf("\x1b[32m\nprawidlowa odpowiedz!\n");
licznik++;
}
else
{
printf("\x1b[31m\nzla odpowiedz!\n");
}
sleep(2);
clear();
printf("\x1b[45m\nPytanie 3/5: Jaki kolor powstaje po zmieszaniu niebieskiego i zoltego?");
printf("\x1b[0m\n");
printf("\x1b[35m\n");
printf(
"a. fioletowy\n"
"b. zielony\n"
"c. czerwony\n"
);
printf("\x1b[45m\nodpowiedz:\n"
" --- \n"
"| |\n"
" --- ");
gotoxy(3,11);
scanf("%c", &odp);
printf("\x1b[0m\n");
if(odp == 'b')
{
printf("\x1b[32m\nprawidlowa odpowiedz!\n");
licznik++;
}
else
{
printf("\x1b[31m\nzla odpowiedz!\n");
}
sleep(2);
clear();
return 0;
}