发布网友 发布时间:2022-04-23 03:50
共5个回答
热心网友 时间:2023-07-10 22:50
举个例吧
比如i=2,s[2]=3, 那么 c[s[2]]就是c[3] 又因为c[5]={0}, c[3]也是=0,c[3]++执行完 就是c[3]=1这样
用绘画板写执行顺序给你看看吧
+1表示执行c[s[i]]++
就这样依次类推知道i=11
通俗的说 就是S[]数组的值作为C数组的序号从而 进行C数组序号对应的值自加
热心网友 时间:2023-07-10 22:51
c[s[i]]++是对数组与数组下标的操作运算。可分为如下几步进行理解:
int a, b;下面通过举例来具体说明:
int s[] = {9, 3, 2, 5};
int c[] = {3, 2, 12, 4, 6};
int i = 2;
int b = c[s[i]]++; // b=13
解释如下:
c[s[i]]++ = c[s[2]]++ = c[2]++ = 12++ = 12+1=13,即:
首先,s[i]=s[2]=2
之后,c[2]=12
最后,c[2]++ = 12+1=13
热心网友 时间:2023-07-10 22:51
这个就是判断s中0 1 2 3 4 出现的次数热心网友 时间:2023-07-10 22:52
s[i]是数组s[]中的第i个元素,比如:s[2]=3;c[]也是一个数组,只不过数组中所有的元素都是0;c[s[i]],就是数组c中的第s[i] 个元素,如果i=2,则s[i]=3,c[3]=0;c[s[i]]++,就是该元素加1,c[3]++=1;热心网友 时间:2023-07-10 22:53
c[s[i]]++; //要分开来看