如何用C语言编写一个函数,实现将一个字符串中的所有元音字母复制到另一个字符串,并在完成后输出目标字符串?
时间: 2024-12-24 12:24:28 浏览: 4
在C语言中,你可以创建一个函数来完成这个任务。首先,需要声明一个辅助函数来检查一个字符是否是元音字母,然后主函数会遍历输入字符串并复制元音到目标字符串。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
// 辅助函数,用于检查字符是否为元音
int is_vowel(char c) {
return (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' ||
c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U');
}
// 主函数,将元音复制到目标字符串
void copy_vowels(const char* input_str, char* target_str) {
int i = 0;
while (input_str[i] != '\0') { // 遍历输入字符串直到结束
if (is_vowel(input_str[i])) { // 如果找到元音
target_str[i] = input_str[i]; // 将其复制到目标字符串
i++; // 移动到下一个字符
} else {
target_str[i] = '\0'; // 如果不是元音,则目标字符串保持原样
}
i++;
}
printf("目标字符串: %s\n", target_str); // 输出结果
}
int main() {
const char* input = "Hello, World!";
char target[50]; // 假设最大有26个元音字母和一些空格
copy_vowels(input, target);
return 0;
}
```
当你运行此程序,它会打印出目标字符串"eooe",这是原始字符串"Hello, World!"中的所有元音。
阅读全文