Help please!不知怎样用指针返回数组。遇到一到题有困难。
写一个函数,由实参传来一个字符串,统计此字符串中字母,数字,空格和其它字符的个数,并在主函数中输入字符串以及输出结果。用指针形参传出个统计值。下面是我有错误的程序。麻烦大家了。
#include<stdio.h>
#include<string.h>
int main()
{
int *fun(char r[]),i;
char s[20];
gets(s);
for(i=0;i<4;i++)
printf("%d ",*(*fun(s)+i));
return 0;
}
int *fun(char r[])
{
int a=0,b=0,c=0,d=0,n,j,k[4];
n=strlen(r);
for(j=0;j<n;j++)
{
if(r[j]>='a'&&r[j]<='z'||r[j]>='A'&&r[j]<='Z')
a++;
else if(r[j]>='0'&&r[j]<='9')
b++;
else if(r[j]=='\0')
c++;
else d++;
}
k[0]=a;k[1]=b;k[2]=c;k[3]=d;
return k;
}