Моя программа продолжает сбой при каждом вводе ввода, хотя я использую метод системной паузы и отображает то же самое количество гласных и согласных, что неверно. Что происходит?Подсчет гласных и согласных
int main() {
// declare vars
char ch;
int vowels = 0;
int consonants = 0;
string word = "temp";
// prompt user
cout << "Please enter a word: ";
cin >> ch;
// loop vowels and consonants
for (int i = 0; i < word.size(); i++) {
ch = toupper(word[i]);
switch (ch) {
case 'A':
case 'E':
case 'I':
case 'O':
case 'U':
vowels++;
break;
default:
consonants++;
}
}
// show num of vowels and consanants
cout << "Number of Vowels: " << vowels << endl;
cout << "Number of Consanants: " << consonants << endl;
// pause and exit
getchar();
getchar();
return 0;
}
'cin >> ch;' => 'cin >> word;' для начала. –
Ваш код не читает слово «правильно». Вместо использования 'cin >> ch' используйте' cin >> word'. Впрочем, это не должно произойти. – dasblinkenlight
Мне любопытно, почему он падает. –