C++ 程序使用指针计算字符串中的元音?

c++server side programmingprogramming

要从字符串中获取元音,我们必须遍历字符串的每个字符。这里我们必须使用指针来遍历字符串。为此,我们需要 C 样式的字符串。如果字符串由 str 指向,则 *str 将在开头保存第一个字符。然后,如果增加 str,则 *str 将指向下一个字符,依此类推。如果字符在 [a,e,i,o,u] 或 [A, E, I, O, U] 中,则它是元音。所以我们将增加计数

算法

countVowels(str)

begin
   count := 0
   for each character ch in str, do
     如果 ch 在 [a,e,i,o,u] 或 [A, E, I, O, U] 中,则
         count := count + 1
      end if
   done
   return count
end

示例

#include<iostream>
using namespace std;
int countVowels(const char *myStr){
   int count = 0;
   while((*myStr) != '\0'){
      if(*myStr == 'a' || *myStr == 'e' || *myStr == 'i' || *myStr == 'o' || *myStr == 'u' || *myStr == 'A' || *myStr == 'E' || *myStr == 'I' || *myStr == 'O' || *myStr == 'U') {
         count++;
      }
      myStr++;
   }
   return count;
}
main() {
   string myStr;
   cout << "Enter String: ";
   cin >> myStr;
   cout << "Number of Vowels: " << countVowels(myStr.c_str());
}

输出

Enter String: EDucation
Number of Vowels: 5

相关文章