Я создаю цикл, который в основном имеет (да / нет) ответ да, нет, и я хотел использовать if if внутри цикла do while.При использовании input == Y
он, кажется, не принимает его, поэтому мне интересно, что это вообще возможно в C?Или, если я подхожу не так, как надо.
Я попробовал простой ввод, если == Y, но это не сработало, тогда я попытался strcmp
, и это тоже не сработало.,Я нахожусь на strcmp
части, потому что я думаю, что я мог бы быть близок к ответу с этим, но я не совсем уверен, понимаю ли я, что происходит со значениями символов.
printf("Would you like to print another invoice? Y=yes, N=No\n");
do {
scanf("%s", &newInvoice);
if(strcmp(newInvoice, Y)!= 0) {
main();
}
else if(strcmp(newInvoice, N)!= 0) {
printf("Goodbye!\n");
}
else {
printf("Invalid Entry (it has to be y or n):\n");
}
} while(strcmp(newInvoice, N)!= 0);
Когда у меня было только input == Y
, он хотел, чтобы я инициализировал Ym и N, так что это не было ответом.Я бы хотел, чтобы цикл повторял вопрос и вводил до тех пор, пока они не скажут «да» или «нет»;если они вводят что-то вроде G или любой другой символ, он должен повторить цикл.