В принципе я начинающий верстальщик и это то, что я писал:C код аварии (не знаю, почему)
#include <stdio.h>
#include <stdlib.h>
int main()
{
system("COLOR 0A");
char playerName[13];
char playerGender;
int playerAge;
printf("Please input your name and age!\nName: ");
scanf("%s", playerName);
printf("Age (from 18 to 50): ");
scanf("%d", &playerAge);
label:
if(playerAge > 18 && playerAge < 50)
{
printf("What gender are you, M(male) or F(female): ");
scanf("%c", playerGender);
gender:
if(playerGender == 'M' || playerGender == 'F'){
printf("Okay, so your name is %s, you're %d years old and you're a %s.", playerName, playerAge, playerGender);
}else{
printf("Try again.\n\n"
"What gender are you, M(male) or F(female): ");
scanf("%c", playerGender);
goto gender;
}
}else{
printf("Wrong, try again.\n"
"Age (from 18 to 50): ");
scanf("%d", &playerAge);
goto label;
}
return 0;
}
Когда я кладу требуемого возраста, чтобы продолжать, он выходит из строя на scanf
для playerGender
. Сразу после того, как он показывает мне вопрос о моем полу? Где моя ошибка?
Основная проблема заключается в использовании 'scanf' для ввода пользователем. – melpomene
Несмотря на то, что вы новичок, у вас должен быть здравый смысл включать вашу полную программу и описание ее поведения. Это очень хорошо! –
Научитесь не использовать goto с самого начала. – Unimportant