Как это работает: конкретный цикл while - PullRequest
0 голосов
/ 02 декабря 2018
int main(){ 
char s;
    while(s!='\n'){
        scanf("%c",&s);
        if(s==' ')continue;
        else printf("%c",s);
    }
}

ввод: стек по потоку

вывод: стек переполнения

что я ожидал: SSttaacckkoovveerrfflloooww

Я не понимаю, как это работает.

1 Ответ

0 голосов
/ 02 декабря 2018
- You have a while loop with the condition that s is not an enter character.
- You read a character from keyboard
- You test if the character is space.
- If true (the character is space) you continue reading another character
  • Если false (символ не является пробелом), вы печатаете его на экране (только один символ печатается один раз)

  • Нигде в вашемВ коде есть строка, которая печатает вдвое больше символа, который вы сохранили в s Например, printf ("% c% c", s, s);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...