帮我写一段能统计字符串里含有元音字母的C语言函数
时间: 2023-03-13 20:14:26 浏览: 73
#include <stdio.h>
int vowel_count(char *string)
{
int count = 0;
for (int i = 0; string[i] != '\0'; i++) {
if (string[i] == 'a' || string[i] == 'e' || string[i] == 'i' ||
string[i] == 'o' || string[i] == 'u' || string[i] == 'A' ||
string[i] == 'E' || string[i] == 'I' || string[i] == 'O' ||
string[i] == 'U')
count++;
}
return count;
}
相关问题
定义一个统计字符串中元音字母数量的函数
好的,以下是一个统计字符串中元音字母数量的函数的示例代码:
```python
def count_vowels(string):
# 定义元音字母
vowels = "aeiouAEIOU"
# 初始化计数器
count = 0
# 遍历字符串中的每个字符
for char in string:
# 判断字符是否为元音字母
if char in vowels:
count += 1
return count
```
这个函数接受一个字符串作为参数,返回该字符串中元音字母的数量。函数首先定义了元音字母,然后遍历字符串中的每个字符,如果该字符是元音字母,则将计数器加 1。最后返回计数器的值。
你可以调用这个函数,例如:
```python
string = "Hello World!"
print(count_vowels(string))
```
这将输出 3,因为字符串中包含 3 个元音字母。
C语言将字符串中元音字母复制到另一字符串用定义函数
好的,下面是一个定义函数的示例代码,可以实现将字符串中的元音字母复制到另一个字符串中:
```
#include <stdio.h>
#include <string.h>
// 定义函数copy_vowels,参数为原始字符串和复制后的字符串
void copy_vowels(char str1[], char str2[])
{
int i, j = 0;
for (i = 0; i < strlen(str1); i++) {
if (str1[i] == 'a' || str1[i] == 'e' || str1[i] == 'i' || str1[i] == 'o' || str1[i] == 'u' ||
str1[i] == 'A' || str1[i] == 'E' || str1[i] == 'I' || str1[i] == 'O' || str1[i] == 'U') {
str2[j] = str1[i];
j++;
}
}
str2[j] = '\0';
}
int main()
{
char str1[100], str2[100];
printf("请输入一个字符串:");
fgets(str1, 100, stdin);
// 调用函数copy_vowels,将原始字符串中的元音字母复制到新的字符串中
copy_vowels(str1, str2);
printf("复制后的元音字母为:%s\n", str2);
return 0;
}
```
在上述代码中,我们定义了一个名为copy_vowels的函数,该函数接收两个参数,分别为原始字符串和复制后的字符串。在函数内部,我们通过循环遍历原始字符串中的每个字符,将元音字母复制到新的字符串中,最后在新字符串的末尾添加'\0'来结束字符串。
在主函数中,我们首先从控制台读入原始字符串,然后调用copy_vowels函数,将原始字符串中的元音字母复制到新的字符串中。最后输出新的字符串即可。
注意,函数的定义要放在主函数的前面,以便在主函数中调用。同时,函数的参数可以根据实际需要进行修改,比如可以将复制后的字符串作为函数的返回值。