这个流程是怎么执行的

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

#include <stdio.h>
int main()
{
int s[12] = {1,2,3,4,4,3,2,1,1,1,2,3}, c[5] = {0}, i;

    for (int i=0; i<12; i++) 
    
    c[s[i]]++;
    
    for (int i=1; i<5; i++)
    
    printf("%d ", c[i]);
    
    return 0;
    

}

运行结果及报错内容

4332

我的解答思路和尝试过的方法

c[s[i]]++;的值怎么变化的,没有看懂这个流程

我想要达到的结果

统计数组 s[] 里相同元素出现的次数。
当 i=0时,s[i=0] =1, c[s[i]]++ = c[1] ++
当i=1时,s[i=1] = 2, c[s[i]]++ = c[2] ++
当i=2是,s[i=2] = 3, c[s[i]]++ = c[3] ++
以此类推。