| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 651 人关注过本帖
标题:一维数组一道题,有些地方不知所云
取消只看楼主 加入收藏
tangwen88
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-11-5
收藏
 问题点数:0 回复次数:3 
一维数组一道题,有些地方不知所云
以知数组a[50]当中的数值都在0~9之中,统计每个数在数组中出现的次数.
#include "stdlib.h"
quzhi(int *a,int n) {int i;  for(i=0;i<n;i++)  a[i]=random(10);}
tongji(int *a,int *c)
   {int i; for(i=0;i<10;i++) c[i]++;    /*问题1*/
           for(i=0;i<50;i++) c[a[i]]++;}  /*问题2*/
shuqu(int *c,int n) {int i; for(i=0;i<n;i++) printf("%d ",c[i]);
main()
{int a[50],c[10];
quzhi(a,50);
tongji(a,c);
shuchu(c,10);
}
问题1:书上说的意思是给c[10]赋初值,那么可不可以不用这句循环,直接int c[10]={0}
问题2:这里的c[a[i]]++到底是什么意思,请详细说下
搜索更多相关主题的帖子: 不知所云 
2008-11-05 11:49
tangwen88
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-11-5
收藏
得分:0 
谢谢了,改了一下,可以运行了,就是c[a[i]]++请详细讲一下意思
2008-11-05 12:09
tangwen88
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-11-5
收藏
得分:0 
或者用容易看懂的表达式带替c[a[i]]++
2008-11-05 12:17
tangwen88
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-11-5
收藏
得分:0 
懂了c[a[i]]++和c[a[i]]=c[a[i]]+1一样
当a[i]=8时c[a[i]]=c[8]
因为c[]的初始值都为0,所以c[8]==0
当第一次a[i]=8时,c[8]对应的数=0+1因此这时候c[8]==1
第二次出现a[i]=8时,c[8]=c[8]+1==1+1==2
终于明白了,谢谢各位
2008-11-05 16:00
快速回复:一维数组一道题,有些地方不知所云
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011947 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved