查看字符串中的字母、数字和其他字符的个数,我的解法有缺陷。。。
#include <stdio.h>#include <string.h>
int main()
{
char str[100];
char* p=str;
这个函数用指针的话如何解 ??????????
int x=0,y=0,z=0;
printf("请输入字符串:");
scanf("%s",str);
for(;*p!='\0';p++) //这个也不行,因为遇到空格指针就直接指向NULL了,也意味着字符串的结束
{
if(*p==' ')
x++;
else if(*p>='a'&&*p<='z'||*p>='A'&&*p<='Z')
y++;
else
z++;
}
printf("字符串中的英文字母个数:%d\n",y);
printf("字符串中的空格个数:%d\n",x);
printf("字符串中的其他字符个数:%d",z);
return 0;
}