不明白是程序的问题还是电脑的问题,大家探讨一下。
还是统计一个数组中空格字符,数字字符,字母字符,还有其他字符的个数。我有一个疑问,程序如下:#include <stdio.h>
#define n 20
void main()
{int letter,digit,space,other,i;
char a[n],*p;
p=a;
letter=0;
digit=0;
space=0;
other=0:
printf("enter str a[n]=");
for(i=0;i<n;i++)
scanf("%c",&(*(p+i))); //*本来这里在进入显示运行结果的时候需要我输入20个字符,可是为什么我输入到第20个以后还能继续输入,怎么样才能让程序控制下.就是当我输入20个字符以后要跳到下面运行,而不是等我计算好是第20个字符的时候按回车*//
while(*p!='\0')
{if((*p>='A'&&*p<='Z')||(*p>='a'&&*p<='z'))
letter++;
if(*p>='0'&&*p<='9')
digit++;
if(*p==' ')
space++;
else other++;
p++;}
p=a;
printf("while str a[n]=%s\n",*p);
printf("letter=d%,digit=%d,space=%d,other=%d\n",letter,digit,space,other);
getch();
}
[ 本帖最后由 李若斌 于 2009-11-11 11:59 编辑 ]