Проблема с char вводом. С++

Задача: С клавиатуры вводятся символы до тех пор, пока предложение не закончится. Концом предложения считать символы: '! ','? ". Подсчитать количество введенных символов, отличных от пробела. Моя попытка решения:

#include <iostream>
using namespace std;
int main()
{
    char s;
    int num = 0, k = 0;
    cout << "Print sentence: ";
    do
    {
        
        cin >> s;
        num++;
        if (s != ' ')
        {
            k++;
        }

    } while (s != '!' || '?');


    cout << "Number of characters: " << k << "\n";

    system("pause");
    return 0;
}

Вроде бы и можно вводить елементы, но они вводятся бесконечно, а условие не работает.


Ответы (0 шт):