У меня есть этот код:Почему он игнорирует второй символ
#include <stdio.h>
#include <ctype.h>
int main()
{
char x;
printf("Program shows your name and check if the first letter is capital");
while (scanf_s("%c", &x) !=1 || getchar() !='\n')
{
if (islower(x))
{
printf("Name begins with a capital letter\n");
while (getchar() != '\n')
;
}
else
{
printf("%c", x);
}
break;
}
while ((x = getchar()) != EOF)
{
printf("%c", x);
}
return 0;
}
Например: Когда я типа «Мэтью» Результат «Mtthew». Что не так? Я понятия не имею. Я попытался изменить почти все в первом «пока», но я думаю, что проблемы там нет. Есть идеи?
3 в то время как петли для этой функции? возможно, вам стоит подумать о повторной записи его – Idos
Вы должны объявить x как 'int', если вы сравниваете его с EOF. Также 'int main()' должен быть 'int main (void)'. –
Не уверен, но я думаю, что перерыв после еще должен быть внутри блока else – Cherubim