用C语言将字符串str1中的字母字符复制到另一字符串str2中,如输入字符串str1abcd123ABCD,输出到str2字符串为abcdABCD要求在主函数中输入字符串并输出复制结果,在被调函数中实现复制
#include <stdio.h>
#include <string.h>
void copyLetters(char *str1, char *str2) {
int j = 0;
for (int i = 0; i < strlen(str1); i++) {
if ((str1[i] >= 'a' && str1[i] <= 'z') || (str1[i] >= 'A' && str1[i] <= 'Z')) {
str2[j] = str1[i];
j++;
}
}
str2[j] = '\0'; // 添加字符串结束符
}
int main() {
char str1[100];
char str2[100];
printf("请输入字符串str1: ");
scanf("%s", str1);
copyLetters(str1, str2);
printf("复制结果为: %s", str2);
return 0;
}
#include <stdio.h>
#include <string.h>
void copy_alphabet(char *str1, char *str2) {
int i = 0;
while (str1[i] != '\0') {
if (isalpha(str1[i])) {
str2[i] = str1[i];
i++;
}
}
str2[i] = '\0';
}
int main() {
char str1[100], str2[100];
printf("请输入字符串:");
scanf("%s", str1);
copy_alphabet(str1, str2);
printf("复制结果为:%s\n", str2);
return 0;
}
供参考:
#include <stdio.h>
void fun(char *str1, char *str2)
{
int i = 0, j = 0;
while (str1[i]) {
if (str1[i] >= '0' && str1[i] <= '9')
i++ ;
else
str2[j++] = str1[i++];
}
str2[j] = '\0';
}
int main()
{
char str1[128], str2[128];
printf("请输入字符串1:");
gets(str1);
fun(str1, str2);
printf("字符串2为:%s\n", str2);
return 0;
}