用C语言将一个字符串中的元音字母复制到另一个字符串 写一个函数,将一个字符串中的元音字母复制到另一个字符串,然后输出
时间: 2023-06-09 22:02:55 浏览: 166
下面是用 C 语言实现将一个字符串中的元音字母复制到另一个字符串的函数:
```
#include <stdio.h>
#include <string.h>
int is_vowel(char c) {
// 判断 c 是否为元音字母
switch (c) {
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
case 'A':
case 'E':
case 'I':
case 'O':
case 'U':
return 1;
default:
return 0;
}
}
void copy_vowels(char *dest, char *src) {
int i, j;
for (i = 0, j = 0; src[i] != '\0'; i++) {
if (is_vowel(src[i])) {
dest[j++] = src[i];
}
}
dest[j] = '\0'; // 末尾加上字符串结束符'\0'
}
int main() {
char str1[50] = "Hello, world!";
char vowels[50];
copy_vowels(vowels, str1);
printf("The vowels in the string '%s' are '%s'.\n", str1, vowels);
return 0;
}
```
在代码中,`is_vowel` 函数判断一个字符是否为元音字母,如果是则返回 1,否则返回 0。`copy_vowels` 函数接受两个字符串指针,将第一个字符串中的元音字母复制到第二个字符串中,并在末尾添加字符串结束符'\0'。在 `main` 函数中,我们测试了 `copy_vowels` 函数,输出了字符串中的元音字母。