用C语言写一函数,将两个字符串中的元音字母复制到另一个字符串,然后输出。
时间: 2024-02-13 19:01:54 浏览: 72
好的,以下是用C语言写一个函数,将两个字符串中的元音字母复制到另一个字符串,然后输出的代码:
```c
#include <stdio.h>
#include <string.h>
void copy_vowels(char *str1, char *str2, char *vowels)
{
int i, j;
int len1 = strlen(str1);
int len2 = strlen(str2);
j = 0;
for (i = 0; i < len1; 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') {
vowels[j] = str1[i];
j++;
}
}
for (i = 0; i < len2; i++) {
if (str2[i] == 'a' || str2[i] == 'e' || str2[i] == 'i' || str2[i] == 'o' || str2[i] == 'u' ||
str2[i] == 'A' || str2[i] == 'E' || str2[i] == 'I' || str2[i] == 'O' || str2[i] == 'U') {
vowels[j] = str2[i];
j++;
}
}
vowels[j] = '\0'; // 在最后一个元音字母后添加一个字符串结束符
printf("The vowels in the two strings are: %s\n", vowels);
}
int main()
{
char str1[100];
char str2[100];
char vowels[100];
printf("Please enter the first string: ");
scanf("%s", str1);
printf("Please enter the second string: ");
scanf("%s", str2);
copy_vowels(str1, str2, vowels); // 调用复制元音字母函数
return 0;
}
```
在上面的代码中,我们定义了一个 `copy_vowels` 函数,该函数接受两个字符串和一个字符数组作为参数。该函数首先使用一个循环遍历第一个字符串,如果当前字符是元音字母,则将其复制到字符数组中。然后使用另一个循环遍历第二个字符串,同样如果当前字符是元音字母,则将其复制到字符数组中。最后,在字符数组的最后一个元音字母后添加一个字符串结束符,并输出字符数组中的元音字母。
希望这个代码能够回答你的问题。如果你还有什么问题或者需要进一步的帮助,请随时告诉我。
阅读全文