【发布时间】:2019-10-15 03:27:23
【问题描述】:
我正在尝试编写一个程序来查找给定字符串中的所有元音,但是我不知道如何让我的程序增加我的计数变量 (numVowels)
我一直在寻找“获取迭代数组的大小”等。但找不到任何特定于 C 的内容。
int num_vowels(char string[]){
//int j;
int i;
int numVowels = 0;
//iterate through string searching for vowels
for(i = 0; i < sizeof(string); i++){
//if any vowels found
if (string[i] == 'a' ||string[i] == 'e' ||string[i] == 'i' ||string[i]
== 'o' ||string[i] == 'u'){
//increase count
numVowels++;
}
}
//print count
printf("Number of vowels: %d", numVowels);
return 0;
}
输入工作正常,只是我无法让它打印元音,甚至无法确定它是否正在通过数组。
编辑:我知道,这是一个很长的 if 语句,我稍后会修复它
【问题讨论】:
-
我觉得一切都很好,除了
sizeof(string)没有按照你的想法做。 -
也许用
strlen(string)替换sizeof(string)? -
在循环控制中使用条件
string[i] != '\0'。