C语言编程中请问b[a[i]]++;是什么意思呀?能详细解释一下吗?

统计个数字出现次数的程序:#include<stdio.h>/*包含头文件*/intmain()/*主函数main*/{inti,a[10]={1,5,6,8,2,1,4... 统计个数字出现次数的程序:
#include<stdio.h> /*包含头文件*/

int main() /*主函数main*/
{
int i,a[10]={1,5,6,8,2,1,4,5,2,5},b[10]={0}; /*定义数组*/
for(i=0;i<10;i++) /*循环数组中的每个值*/
b[a[i]]++; /*统计出现的次数*/
for(i=0;i<10;i++) /*从0-9依次循环*/
printf("%d出现的次数%d\n",i,b[i]); /*显示输出次数结果*/

return 0; /*程序结束*/
}
展开
 我来答
匿名用户

2021-12-09
展开全部
a有十个数字,a[i]就是遍历a中的每一个数字
b[i]表示数字i出现的次数,所以b[a[i]]就是数字a[i]出现的次数
所以 b[a[i]]++的意思就是,当数字a[i]出现一次,在b数组中对应位置的计数加一
设5在a数组中出现了5次,即a[i]出现了5次,而当a[i]=5时,b[5]的值就加一,则遍历结束,b[5] = 5,即a[i]是5出现的次数
匿名用户
2021-12-09
展开全部
b[a[i]]++; 这句话在for循环体中
首先 i 会每次 加1,即a[i]会为a[0] a[1] a[2] ……a[9]所对应的值
所以b[a[i]],就会是b[1] b[5] b[6] b[8] b[2] b[1] b[4] b[5] b[2] b[5]
那b[a[i]]++, 就为b[1]++ b[5]++ …… b[5]++,最终数组b[10]={0, 2, 2, 0, 0, 3, 1, 0, 1, 0}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shine1991
科技发烧友

2021-12-09 · 智能家居/数码/手机/智能家电产品都懂点
知道顶级答主
回答量:4.7万
采纳率:82%
帮助的人:2.3亿
展开全部

b[a[i]]++; 

即对数组b的a[i]元素自增1

例如,i==0时,a[i]值为1,即b[1]++;

之后同理,直至数组a的下标为0-9的元素遍历完

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爱笑的阿丞
2021-12-08
知道答主
回答量:9
采纳率:0%
帮助的人:3509
展开全部
取a[i]值作为下标把b对应的值加1。

b[a[0]]++相当于b[1]++,其他的以此类推。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式