C Program to Add Digits of Number and Number itself

To add all the digits of any number along with number itself in C programming, you have to ask from the user to enter the number to add their digits and the number itself and display the result as output screen.

Let's suppose that user has given 247 as input, then the program will calculate the sum of all digit of the given number and the number itself, that is 2+4+7 or 13 will be again added to the number itself that is 13+247 or 260 will be final output as in case of 247. Here is the program:

Program to Add Number's Digits and Number in C

The question is, write a program in C that will ask from user to enter any number and then this program has to find the sum of all digit of that number along with the number itself. For example, if the number is 23, then 2+3+23, that is 260 will be the output.

Following C program ask from the user to enter any number to add the digits of that number along with the number itself:

#include<stdio.h>
#include<conio.h>
int main()
{
    int num, rem=0, sum=0, temp;
    printf("Enter the Number: ");
    scanf("%d", &num);
    temp = num;
    while(num>0)
    {
        rem = num%10;
        sum = sum+rem;
        num = num/10;
    }
    sum = sum+temp;
    printf("Sum of all digit along with number = %d", sum);
    getch();
    return 0;
}

As the above program was written under Code::Blocks IDE, therefore after successful build and run, here is the sample run. This is the first snapshot of the sample run:

c program add number digits

Now supply any number say 247 to calculate the sum of digit (2+4+7) along with number itself, that is 2+4+7+247. Here is the second snapshot of the sample run:

c print sum of digit and number

Here are some of the main steps used in above program:

  • Receive any number as input say 247
  • Initialize this number to a variable say temp
  • Create while loop, that runs until the number is greater than 0
  • Inside the while loop, find the last digit of the number using modulous or remainder operator to add the digit one by one. Divide the number with 10 to check and enter into the loop again to find the sum of next digit.
  • That is at first run, num or 247 is greater than 0, therefore program flow goes inside the loop, and num%10 or 7 will be initialized to rem. Then sum+rem or 7 will be initialized to sum (never forgot to initialize 0 to sum at start of the program). Finally divide the number with 10, that is num/10 or 247/10 or 24 will be initialized to num. After this let's again check whether the value of num is greater than 0 or not
  • If it is, then again program flow goes inside the while loop and do the same operation as done earlier
  • In this way, we can have the variable sum that will hold the value of sum of all digit of the given number
  • Now add this to the number itself, that is we have the value of number initialized to temp variable before goes into the while loop
  • After summing up, print out the value of sum variable as output that shows 2+4+7+247 that is 260 on output screen

C Online Test


« Previous Program Next Program »