# include<stdio.h>
main()
{
int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;
for(i=0;i<12;i++) c[s[i]]++;
for(i=1;i<5;i++) printf("%d",c[i]);
printf("\n");
}
c[5]={0}
c[0]=0;
c[1]=0;
c[2]=0;
c[3]=0;
c[4]=0;
为什么运行之后会变成4332?
你慢慢看这段代码,c的下标是s[i]的值,因为s数组中没有0,所以c[0]依然是初始化时的0,s数组中有4个1,所以c[1]会从0自增4次也就变成4了,依次类推,c[2]就是s数组中2的个数,也就是3,下面应该好懂吧。
回复 qqq:谢谢!
点赞
扫一扫分享朋友圈
二维码
分享
你确定要删除这个问题吗?