原文: https://www.programiz.com/cpp-programming/examples/vowel-consonant-frequency-string
要理解此示例,您应该了解以下 C++ 编程主题:
示例 1:C 样式的字符串
该程序从用户那里获取 C 风格的字符串,并计算元音,辅音,数字和空格的数量。
#include <iostream>using namespace std;int main(){char line[150];int vowels, consonants, digits, spaces;vowels = consonants = digits = spaces = 0;cout << "Enter a line of string: ";cin.getline(line, 150);for(int i = 0; line[i]!='\0'; ++i){if(line[i]=='a' || line[i]=='e' || line[i]=='i' ||line[i]=='o' || line[i]=='u' || line[i]=='A' ||line[i]=='E' || line[i]=='I' || line[i]=='O' ||line[i]=='U'){++vowels;}else if((line[i]>='a'&& line[i]<='z') || (line[i]>='A'&& line[i]<='Z')){++consonants;}else if(line[i]>='0' && line[i]<='9'){++digits;}else if (line[i]==' '){++spaces;}}cout << "Vowels: " << vowels << endl;cout << "Consonants: " << consonants << endl;cout << "Digits: " << digits << endl;cout << "White spaces: " << spaces << endl;return 0;}
输出
Enter a line of string: This is 1 hell of a book.Vowels: 7Consonants: 10Digits: 1White spaces: 6
示例 2:字符串对象
该程序从用户那里获取一个字符串对象,并计算元音,辅音,数字和空格的数量。
#include <iostream>using namespace std;int main(){string line;int vowels, consonants, digits, spaces;vowels = consonants = digits = spaces = 0;cout << "Enter a line of string: ";getline(cin, line);for(int i = 0; i < line.length(); ++i){if(line[i]=='a' || line[i]=='e' || line[i]=='i' ||line[i]=='o' || line[i]=='u' || line[i]=='A' ||line[i]=='E' || line[i]=='I' || line[i]=='O' ||line[i]=='U'){++vowels;}else if((line[i]>='a'&& line[i]<='z') || (line[i]>='A'&& line[i]<='Z')){++consonants;}else if(line[i]>='0' && line[i]<='9'){++digits;}else if (line[i]==' '){++spaces;}}cout << "Vowels: " << vowels << endl;cout << "Consonants: " << consonants << endl;cout << "Digits: " << digits << endl;cout << "White spaces: " << spaces << endl;return 0;}
输出
Enter a line of string: I have 2 C++ programming books.Vowels: 8Consonants: 14Digits: 1White spaces: 5
