C语言中 c[s[i]]++ 怎么理解?
答案:7 悬赏:0 手机版
解决时间 2021-04-04 16:46
- 提问者网友:温旧梦泪无声
- 2021-04-04 04:23
C语言中 c[s[i]]++ 怎么理解?
最佳答案
- 五星知识达人网友:酒者煙囻
- 2021-04-04 05:07
c[s[i]]++是对数组与数组下标的操作运算。可分为如下几步进行理解:
int a, b;
a = s[i]; // 将数组c的下标赋值给变量a
c[s[i]] = c[a];
b = c[a]; // 将数组c的第a+1个元素值赋值给变量b
c[s[i]]++ = 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
int a, b;
a = s[i]; // 将数组c的下标赋值给变量a
c[s[i]] = c[a];
b = c[a]; // 将数组c的第a+1个元素值赋值给变量b
c[s[i]]++ = 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
全部回答
- 1楼网友:酒者煙囻
- 2021-04-04 11:22
s[i]用来定位数组c的位置,然后对数组c中的元素做自增运算。如下所示。c[1],c[2],c[3],c[4],c[4],c[3],c[2],c[1],c[1],c[1],c[2],c[3]
- 2楼网友:末日狂欢
- 2021-04-04 10:05
c[s[i]]++; //要分开来看
s[i] 的值,也就是数组定义的值,如果 i 等于 2,那么是s[2] = 3;
对于 c[s[i]]++; 来说,也就变成了 c[ 3 ]++;
明白了吗
s[i] 的值,也就是数组定义的值,如果 i 等于 2,那么是s[2] = 3;
对于 c[s[i]]++; 来说,也就变成了 c[ 3 ]++;
明白了吗
- 3楼网友:鸠书
- 2021-04-04 08:51
举个例吧
比如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数组序号对应的值自加
- 4楼网友:轻雾山林
- 2021-04-04 08:43
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;
- 5楼网友:不想翻身的咸鱼
- 2021-04-04 07:50
c[s[i]]++; 先取i的值
然后取s[i]的值
然后取c[s[i]]的值
然后c[s[i]] 自加1
然后取s[i]的值
然后取c[s[i]]的值
然后c[s[i]] 自加1
- 6楼网友:一袍清酒付
- 2021-04-04 06:14
这个就是判断s中0 1 2 3 4 出现的次数
c[5]={0}这个赋值c全部为零
c[s[i]]这个就是让s[i]的数据党c的下标
++就好说了,就是c的那个加上1
如党i是3的时候,s[i]是4,那么c[4]就自加1
c[5]={0}这个赋值c全部为零
c[s[i]]这个就是让s[i]的数据党c的下标
++就好说了,就是c的那个加上1
如党i是3的时候,s[i]是4,那么c[4]就自加1
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯