帮忙看哪里错拉哦~~
一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数,本来是个循环题目我用指针做的。我搞不清那里错拉,能编译,但是出来的结果不大对哦
#include <stdio.h>
void main(void)
{ int word=0,num=0,space=0,other=0,i; //分别定义字母 数字 空格 其它
char sentence[]="you are a pig.";
char *p;
p=&sentence[i];
while(*p++)
{ if (*p>='a'&&*p<='z'||*p>='A'&&*p<='Z')
word++;
else if(*p>='0'&&*p<='9')
num++;
else if(*p==' ')
space++;
else other++;
}
printf("%d %d %d %d\n",word,num,space,other);
}
出来的结果是25 2 0 7
麻烦告诉我,哪里错拉和为什么会出现这样的结果。