int型の配列内の要素を数える
Posted: 2010年9月27日(月) 22:48
0~9の値の入ってるint型配列内の数字を数えたいと思います。
例)
13575844
と配列にあれば
1が1個
3が1個
5が2個
7が1個
8が1個
4が2個
ということを知りたいです。
以下のように実装したのですが、1個あるはずなのに
ret=0
と出力されてしまいました。
配列にはちゃんと値が入ってるようで、なおかつGetNum関数にArr
は渡っているようでした。
どこがおかしかったのでしょう。
(これは余談ですが、GetNumという名前はいかがなものでしょうか
なにかいい名前(?)があれば幸いです。)
=============================================================
#include <stdio.h>
int GetNum(int Arr[/url],int num)
{
int i,ret=0;
for(i=0;i<num;i++){
if(Arr==num) ret++;
}
return ret;
}
int main(void)
{
int i,Arr[5];
for(i=0;i<4;i++){
Arr=i;
}
printf("ret=%d\n",GetNum(Arr,3));
}
=============================================================
例)
13575844
と配列にあれば
1が1個
3が1個
5が2個
7が1個
8が1個
4が2個
ということを知りたいです。
以下のように実装したのですが、1個あるはずなのに
ret=0
と出力されてしまいました。
配列にはちゃんと値が入ってるようで、なおかつGetNum関数にArr
は渡っているようでした。
どこがおかしかったのでしょう。
(これは余談ですが、GetNumという名前はいかがなものでしょうか
なにかいい名前(?)があれば幸いです。)
=============================================================
#include <stdio.h>
int GetNum(int Arr[/url],int num)
{
int i,ret=0;
for(i=0;i<num;i++){
if(Arr==num) ret++;
}
return ret;
}
int main(void)
{
int i,Arr[5];
for(i=0;i<4;i++){
Arr=i;
}
printf("ret=%d\n",GetNum(Arr,3));
}
=============================================================