C program to Count the digits of a number

Given a number N, write a C program to find the count of digits in number N.


Input: N = 12345
Output: 5
The count of digit in 12345 = 5.

Input: N = 23451452
Output: 8
The count of digits in 23451452 = 8.

Approach: Count of digits in a number can be found efficiently in few steps:

  1. Remove the last digit of number by dividing it with 10.
  2. Increment the count of digit by 1.
  3. Keep repeating steps 1 and 2 until the value of N becomes 0. In this case, there will be no more digit left in the number to count






// C Program to find count of
// digits in a number
#include <stdio.h>
// Find the count of digits
int findCount(int n)
    int count = 0;
    // Remove last digit from number
    // till number is 0
    while (n != 0) {
  //Increment count
        n /= 10;
    // return the count of digit
    return count;
// Driver program
int main()
    int n = 98562;
    printf("Count of digits in %d = %d\n",
 n, findCount(n));
    return 0;



Count of digits in 98562 = 5

Time complexity: O(D), where D is the count of digits in number N.
Auxiliary Space complexity: O(1)

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.