C程序在单个语句中求和给定数字的位数

在本节中,我们将看到如何在不编写多个语句的情况下找到数字总和。换句话说,我们将在单个语句中找到数字总和。

众所周知,要找到数字的总和,我们将数字除以10后取余数,然后再将数字除以10,直到数字变为0,从而减去最后一位。

要在单个语句中完成这些任务,可以使用for循环。我们知道在for循环中有三个不同的部分。在初始化阶段,在这种情况下,我们什么也不做,然后在条件检查阶段,检查数字是否大于0。在增量递减阶段,我们正在执行多项任务。首先,我们通过取数字的最后一位来增加总和,并通过将其除以10来减少总和。

范例程式码

#include<stdio.h>
main() {
   int n, sum = 0;
   printf("Enter a number: "); //take the number from the user
   scanf("%d", &n);
   for(; n > 0; sum += n%10, n/= 10) {
   }
   printf("The sum of digits: %d", sum);
}

输出1

Enter a number: 457
The sum of digits: 16