这个程序是怎么运算的,怎么算出1#1#2#1#0?

#include <stdio.h>

int main()

{

int i,k,m;

int a[6]={15,25,33,61,72,36},s[7]={0};

for(i=0;i<6;i++)

{

k=a[i]/10; s[k]++;

}

m=s[0];k=1;

while(k<7)

{

if(s[k]!=0)printf("%d#",s[k]);

if(s[k]<m) m=s[k];

k++;

}

printf("%d",m);

}

for循环里面是在统计数组a里面十位上数字出现的次数并保存到数组s里面,例如s[1],保存的是十位上为1出现的次数,数组a里面十位为1的只有数字15,所以s[1]的值为1;s[3]则是十位为3出现的次数,在数组a里面有33和36,所以s[3]的值为2。后面的while循环则将非0的s[k]值都打印出来,m是数组s中最小的那个值。