关于统计一个字符串里面0~9数字出现的个数的fun函数不知道哪里出错了
程序代码:
#include<string.h> void fun(char* str,int num[10],int n) { int i,j,k=0; for(i=0;i<10;i++) { for(j=0;j<n;j++) if(num[i]==*(str+j)) { k++; } num[i]=k; } for(i=0;i<10;i++) { printf("%d ",num[i]); } } void main() { int a[10]={0,1,2,3,4,5,6,7,8,9},n; char str1[100],*str2; str2=str1; printf("Input the array:\n"); gets(str1); n=strlen(str1); fun(str2,a,n); //printf("%d ",fun(str2,a,n)); } 为什么输出的结果全是0?fun函数是让一个字符串里面的数字统计各出现了几次 然后再a数组里对应输出出现的次数。比如说“33sd3er2s2”这个字符串,输出结果应 该是“0023000000”。但我的程序哪里错了输出的全是“0000000000”。