c语言小白求助大佬!!

输入一个字符串,删除字符串中所有非数字和字母的字符后形成新的字符串,并将该字符串输出!

#include <stdio.h>

int main()

{

char a[80];

gets(a);

int i, j = 0;

for(i=0; a[i]; i++)

if((a[i] >= 'a' && a[i] <='z') || (a[i] >='A' && a[i] <= 'Z') ||(a[i] >= '0' && a[i] <='9'))

{

a[j] = a[i];

j++;

}

a[j] = '\0';

puts(a);

return 0;

}

 

代码如下,如有帮助,请采纳一下,谢谢。

#include <stdio.h>
#include <string>
void main()
{

	char buf[100] = {0};
	char tmp[100] = {0};
	int ind = 0;
	scanf("%s",buf);

	int len = strlen(buf);

	for (int i = 0; i < len; i++)
	{
		if ( (buf[i] >='0' && buf[i] <= '9') || (buf[i] >='a' && buf[i] <= 'z') || buf[i] >='A' && buf[i] <= 'Z')
		{
			continue;
		}else
		{
			tmp[ind] = buf[i];
			ind++;
		}
	}
	printf("%s\n",tmp);
	

	getchar();
	getchar();
}