字符数组保留字符去掉数字

这个代码,执行下来是不对的,怎么改呀?

#include <iostream>
#include <string.h>
char *Getstr(char str[],char str1[]);

int main()
{
	char str[100];
	char str1[100];
	gets_s(str);
	for (int i = 0; i < strlen(str); i++)
	{
		printf("%c", *(Getstr(str,str1)+i));
	}
	return 0;
}

char *Getstr(char str[],char str1[] )
{
	char *p1=str;
	char *p2 = str1;
	for (int i = 0; str[i] != '\0'; i++)
	{
		if (*p1 >= '0' && *p1 <= '9')
			break;
		else 
			str1[i]=*(p1+i);
	}
	return p2;
}

 

供参考:

#include<stdio.h>
#include <iostream>
#include <string.h>
char *Getstr(char str[],char str1[]);
int main()
{
	char str[100];
	char str1[100];
	gets_s(str);
        puts_s(Getstr(str,str1));
       
	return 0;
}
char *Getstr(char str[],char str1[] )
{
        int i,j;
	for (i = 0,j=0; str[i] != '\0'; i++)
	{
		if (str[i] >= '0' && str[i] <= '9')
			continue;//break;
                str1[j++]=str[i];
	}
        str1[j]='\0';
	return str1;
}