C言語で数値の桁数をカウントの方法

整数の位数を判定する方法は以下と同様です。

#include <stdio.h>

int countDigits(int num) {
    int count = 0;
    if (num == 0) {
        return 1;  // 如果num为0,直接返回1
    }
    while (num != 0) {
        num /= 10;  // 将num除以10,每次去掉最后一位
        count++;  // 计数器加1
    }
    return count;
}

int main() {
    int num;
    printf("请输入一个整数:");
    scanf("%d", &num);
    int digits = countDigits(num);
    printf("%d的位数为:%d\n", num, digits);
    return 0;
}

上記のコードのcountDigits関数は、整数の桁数を数える関数です。numが0かどうかを判定し、0であれば1を返します。そうでなければ、whileループでnumを10で割って0になるまで繰り返し、そのたびにカウンタのcountを増やします。最後に、countを結果として返します。main関数では、まず整数numを入力し、countDigits関数を呼び出してその桁数を数え、結果を出力します。

bannerAds