用数组元素来统计数字字符的个数
#include <stdio.h>#include <stdlib.h>
#define N 10
void getnumber(char ch,char *s, int *a)
{int i;
for(i=0;i<N;i++) a[N]=0;
while(ch!='\n')
{if (ch<='9'&&ch>='0') a[ch-'0']+=1; }
}
void outdata(int *a)
{int i;
for(i=0;i<N;i++) printf("%d : %d\n", i,a[i]);
printf("\n");
}
main()
{char ch,*s;
int *a;
printf("input the number series:\n");
ch=getchar();
getnumber(ch,s,a);
outdata(a);
system("PAUSE");
return 0;
}
怪异死了,自己看着觉得很对了,可机器还是不给我出结果,只提示input the number series:。等我输入数字以后,它就歇菜了。
怎么办?而这段绕来绕去的东东 while(ch!='\n')
{if (ch<='9'&&ch>='0') a[ch-'0']+=1; }
还是书后面的答案提示,应该是这东东出了毛病,可毛病在哪儿咧?