C Program to Find First Digit Of a Number

How do you write a C Program to Find the First Digit Of a Number with an example?

C Program to Find First Digit Of a Number

This program will allow the user to enter any number. And then, it is going to find the First Digit of the user entered value.

#include <stdio.h>
#include <math.h>
 
int main()
{
  	int Number, FirstDigit, Count;
 
  	printf("\n Please Enter any Number that you wish  : ");
  	scanf("%d", & Number);
  	
  	Count = log10(Number);
  	
  	FirstDigit = Number / pow(10, Count);
  
  	printf(" \n Total Number of Digit in a Given Number %d =  %d", Number, Count);
	printf(" \n The First Digit of a Given Number %d =  %d", Number, FirstDigit);
 
  	return 0;
}
C Program to Find First Digit Of a Number 1

Within this Program to Find the First Digit, the User entered Value: Number = 1234

Count = log10(Number) – This will return the total number of digits in a number -1
Count = 3

FirstDigit = 1234 / pow(10, 3) = 1234 / 1000 = 1.234 = 1

C Program to return First Digit Of a Number

This program will use the While Loop to find the First Digit of the user entered value.

 #include <stdio.h>
 
int main()
{
  	int Number, FirstDigit;
 
  	printf("\n Please Enter any Number that you wish  : ");
  	scanf("%d", & Number);
  	
  	FirstDigit = Number;
  	
  	while(FirstDigit >= 10)
  	{
  		FirstDigit = FirstDigit / 10;
	}
  
	printf(" \n The First Digit of a Given Number %d =  %d", Number, FirstDigit);
 
  	return 0;
}
 Please Enter any Number that you wish  : 354
 
 The First Digit of a Given Number 354 =  3

Within this Program to Find the First Digit Of a Number, Number = 354

While Loop First Iteration while (354 >= 10)
FirstDigit = FirstDigit / 10 = 354 / 10 = 35

While Loop Second Iteration while (35 >= 10)
FirstDigit = FirstDigit / 10 = 35 / 10 = 3

While Loop Third Iteration while (3 >= 10)
Condition is False, so the C Programming compiler will exit from the While Loop and print 3 as output.

Using Function

This C program to display the First Digit Of a Number is the same as above. However, this time, we divided the code using the Functions concept.

#include <stdio.h>
#include <math.h>

int First_Digit(int num);
 
int main()
{
  	int Number, FirstDigit;
 
  	printf("\n Please Enter any Number that you wish  : ");
  	scanf("%d", & Number);
  	
  	FirstDigit = First_Digit(Number);
  	
	printf(" \n The First Digit of a Given Number %d =  %d", Number, FirstDigit);
 
  	return 0;
}

int First_Digit(int num)
{
	while(num >= 10)
	{
		num = num / 10;
	}
	return num;
}
 Please Enter any Number that you wish  : 657489
 
 The First Digit of a Given Number 657489 =  6

About Suresh

Suresh is the founder of TutorialGateway and a freelance software developer. He specialized in Designing and Developing Windows and Web applications. The experience he gained in Programming and BI integration, and reporting tools translates into this blog. You can find him on Facebook or Twitter.