Привет, поэтому я все еще изучаю C и вот что я придумал. Моя проблема в том, что она не начнется с начала, если пользователь вводит переменную «число» в значение меньше или равно 0. Какие-нибудь подсказки? Также помните, если я спрошу, как начать цикл, когда вы используете функцию?Петля к началу
void main() {
int x = 0, y = 0, m, n, number, life = 4;
char choice;
int a[R][C] = { {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0} };
do {
printf("\t\t\t Welcome to my game");
Sleep(2000);
printf("\n\n This game is all about guessing where your number is located in the matrix");
Sleep(2000);
printf("\n\n\t\t\t\tOnly 1 player\n");
Sleep(2000);
printf("\n\n You are betting your own very life! \t\t\tYou have 5 tries");
Sleep(1000);
printf("\n\nEnter your number: ");
scanf("%d", &number);
system("cls");
if (number <= 0) {
system("cls");
printf("Only positive numbers allowed");
printf("\nRetry? Y/N: ");
fflush(stdin);
scanf("%c", &choice);
fflush(stdin);
if (choice == 'n' || choice == 'N') {
system("cls");
printf("Thanks for playing");
break;
}
system("cls");
break;
}
display(a);
printf("\n\nInputted number is %d", number);
printf("\n\nYour number is now being placed at a random location");
printf("\n\nGuess where your number is located (row) (column)");
printf("\n\nNote: Enter only numbers 1-4 or else you'll be wrong");
printf("\n\nEnter coordinates: ");
scanf("%d%d", &m, &n);
printf("\n");
placingguess(a, number, m, n, life);
break;
} while (choice != 'n' || choice != 'N');
getch();
}
Технически у вас есть неопределенное поведение в коде, выполнение 'fflush (stdin)' не является определенной операцией. Некоторые стандартные библиотеки позволяют использовать его как расширение, но вы не должны привыкать делать это, если хотите писать переносимый код. –
Вы действительно считаете нужным поставить программу на спящий режим на 7000 секунд? Далее, 'fflush' на' stdin' вызывает неопределенное поведение. Что такое 'cls'? – user3078414
Что касается вашей проблемы, что это за слово 'break', допинг там в цикле? Вы * знаете, что ['break'] (http://en.cppreference.com/w/c/language/break) внутри цикла? ' –