How to write a C Program to Sum Up Digits of a Number in C Programming Language ?
Solution:
- #include<stdio.h>
- int main()
- {
- int i,divisor,casted,digit,number,sum=0;
- long int m;
- printf("Number of digits in your number : ");
- scanf("%d", &digit);
- int ara[digit];
- printf("\nEnter number : ");
- scanf("%d", &number);
- if(digit==1)
- m=1;
- else if(digit==2)
- m=10;
- else if(digit==3)
- m=100;
- else if(digit==4)
- m=1000;
- else if(digit==5)
- m=10000;
- else if(digit==6)
- m=100000;
- else if(digit==7)
- m=1000000;
- else if(digit==8)
- m=10000000;
- else if(digit==9)
- m=100000000;
- else if(digit==10)
- m=1000000000;
- else if(digit==11)
- m=10000000000;
- for(i=0,divisor=10; i<digit; i++, m=m/10) {
- casted=(int)number/m;
- ara[i]=casted%divisor;
- }
- for(i=0; i<digit; i++){
- sum=sum+ara[i];
- }
- printf("%d\n",sum);
- }