簡體   English   中英

某個數的位數之和

[英]Sum of digits of some number

例如,如果我輸入 12345 那么 sum = 1+2+3+4+5

int i ;
int sum;
int individual;
int n;
printf("enter the number: ");
scanf("%d",&n);
for (i=0;i<5;++i){
  **indvidual=+n[i];**
  sum=+invidual;
}
printf("%d",sum)
return 0;

您可以除以 10 並查看余數以獲得每個數字。

此外,您應該使用+=而不是=+將內容添加到變量並在使用它們的值之前初始化變量。

int i ;
int sum = 0; /* initialize */
int individual;
int n;
printf("enter the number: ");
scanf("%d",&n);
for (i=0;i<5;++i){
  indvidual=+(n%10); /* obtain a digit (+ is not required, but left by respect) */
  n/=10; /* eliminate last dight and proceed to next digit */
  sum+=invidual; /* use += instead of =+ */
}
printf("%d",sum); /* also add semicolon here */
return 0;
#include <stdlib.h>    
#include <stdio.h>
int main()
{
    int i = 12345;
    int sum;
          
    i = abs(i);
    sum = i?i%9?i%9:9:0;

    printf ("Sum of digits is %d\n",  sum);
}

結果是 6

因為1 + 2 + 3 + 4 + 5 = 15然后1 + 5 = 6

(或者是預期的 output 15 ,只需通過數字一次?)



如果您只想通過數字一次:
 #include <stdlib.h> #include <stdio.h> int main() { int i = 12345; int sum=0; i = abs(i); while(i) { sum += i%10; i /= 10; } printf ("Sum of digits is %d\n", sum); return 0; }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM