C言語関係掲示板

過去ログ

No832 int型数値の桁数は・・・?

[戻る] [ホームページ]
No.10511

int型数値の桁数は・・・?
投稿者---ダメダメプログラマ(2003/11/15 14:25:27)


int型の数値の桁数を求めたいのですが、
方法が分かりません。

最も簡単な方法などございましたらご教授願います
(出来れば「数値→文字列→桁数判定」の流れは使いたくない)

No.10513

Re:int型数値の桁数は・・・?
投稿者---初カキコ(2003/11/15 14:39:58)


>int型の数値の桁数を求めたいのですが、


こんな関数どうでしょう。

keta = CountBumber(a);
のように呼び出せばketaにaの桁数が入ります。

int CountNumber(int x){
int i=0,y=x;
while(y!=0){
y /= 10;
i++;
}
return i;
}

No.10514

Re:int型数値の桁数は・・・?
投稿者---ceybord(2003/11/15 14:50:01)


>int型の数値の桁数を求めたいのですが、
>方法が分かりません。
>
>最も簡単な方法などございましたらご教授願います
>(出来れば「数値→文字列→桁数判定」の流れは使いたくない)
sprintf→strlenが一番良いかと思われますが、
math.hのlog関数を使うのも有効ですよ。
引数が正か負か零かで場合わけしてください。