腾讯笔试题求助:c++数数的问题,比如一个数组112222555...如何统计不同数字各有多少个数?

1、这个题目不需要排序,这里假设:char?*a="1231231231234";

2、申请一个?intshu[11]?;?,分别存放0?-?9?数字的个数

3、从头至尾,逐位开始遍历数组,这里以?i?作为数组的下标

4、遍历的过程中,shu[a[?i]?]?++;?这样对统计赋值

结果是:1?=?4、2?=?4?、?3=4?、4?=?1

5、不知道是不是描述清楚了,嘿嘿

#include<stdio.h>

int?main()

{

int?a[]={1,2,3,1,2,3,1,1,4,8,8,8};

int?shu[12]={0};

int?x;

for(x=0;x<12;x++)

shu[a[x]]++;

for(x=0;x<10;x++)

printf("统计输出?%d?出现?%d?\n",x,shu[x]);

return?0;

}