Write a C program to enter any number from user and calculate product of its digits. How to find product of digits of any number using loop in C programming. Logic to find product of digits of a given number in C program.

**Example**

**Input**

Input number: 1234

**Output**

Product of digits: 24

## Required knowledge

## Logic to find product of digits

Finding sum of digits or product of digits. Logic of both the program are similar. If you are done with sum of digits, you can easily derive the logic for this program. If not read below the logic to find product of digits.

I have divided the logic to calculate product of digits in three steps.

- Extract the last digit.
- Multiply the extracted last digit with the previous product.
- Remove the last digit by dividing number by 10.

Below is the step by step descriptive logic to find product of digits of a given number.

- Read a number from user. Store it in some variable say num.
- Initialize another variable that will hold our product i.e. product = 1. Now you may think why I have initialized product with 1 why not 0? This is because we are performing multiplication operation not summation. Multiplying with 1 returns the same, so as summation with 0 returns the same. Hence, I have initialized prodcut with 1.
- Find the last digit of number by performing modular division by 10. Which is lastDigit = num % 10.
- Multiply the last digit just found above with product i.e. product = product * lastDigit.
- Remove the last digit by dividing the number by 10. Which is num = num / 10.
- Repeat step 3-5 till number becomes 0. Finally you will be left with product of digits in product.

## Program to find product of digits

/** * C program to calculate product of digits of any number */ #include <stdio.h> int main() { int n; long product=1L; /* Read a number from user */ printf("Enter any number to calculate product of digit: "); scanf("%d", &n); /* Repeat the steps till n becomes 0 */ while(n != 0) { /* Get the last digit from n and multiplies to product */ product = product * (n % 10); /* Remove the last digit from n */ n = n / 10; } printf("Product of digits = %ld", product); return 0; }

Enter any number to calculate product of digit: 1234 Product of digits = 24

Happy coding ;)

### You may also like

- Loop programming exercises index.
- C program to count number of digits in any number.
- C program to find first and last digit of any number.
- C program to find sum of first and last digit of any number.
- C program to swap first and last digit of any number.
- C program to find sum of digits of a given number.
- C program to find reverse of any number.
- C program to check whether a number is palindrome or not.

< pre>< code >----Your Source Code---- < / code > < / pre > (Remove spaces from pre and code tags)