//我是c ++的新手,我不了解所有语法规则以及指针之类的某些事情。我想知道如何使程序在输入数组中找到元音,请不要使用矢量建议。我知道我可能会这么做,但我想知道更好的原因和方法。
sendmsg bb2652fa-467c-44a1-a2f0-0f5e4363e2f3
call-command: execute
execute-app-name: playback
execute-app-arg: d:\vox\sample.vox
loops: 1
Event-UUID: play command id 369
答案 0 :(得分:1)
您需要将输入的值设置为单词,并在每个字母后打印总和,因为您在循环内部打印了该单词。
答案 1 :(得分:1)
您需要在程序段中处理一些事情。
cin >> n;
)。你需要在循环外打印总和(元音的数量)。
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
int sum = 0;
int n;
char vowels[6] = {'a', 'e', 'i', 'o', 'u', 'y'};
char word[20] = NULL;
cout << "Enter word" << endl;
while (getline(cin, word)) //read line of text including white space until enter key is pressed
{
}
n=strlen(word); //get the length of the input string
for(int i=0; i < n; i++)
{
for(int j=0; j < 6; j++)
if(word[i] == vowels[j])
{
sum++;
}
}
cout << sum; //Print total number of vowles
delete [] word;
word = NULL;
return 0;
}
这将产生所需的输出。
答案 2 :(得分:0)
您的代码中出现了一些错误:
首先,cin >> word
不会将单词作为输入,只需要数字。这是因为word
的类型为int
。
此外,您需要在for循环外打印sum
,以便不会连续打印。