Нет прямой формулы для этой задачи, но вы можете выполнить эту задачу в отдельной функции и использовать эту функцию там, где это необходимо.Вот два простых решения, которые зависят от типа ввода.
Если Ввод имеет вид String (т.е. "2 + 12 + 8"), тогда код будет -
#include <stdio.h>
int main()
{
char str[] = "2 + 12 + 8";
int sum=0;
for (int i = 0; i < strlen(str); i++) {
if (str[i] >= '0' && str[i] <= '9')
sum += str[i] - '0';
}
printf("%d",sum);
return 0;
}
Если Ввод имеет вид Массив (т.е. [2, 12, 8]), тогда код будет -
#include <stdio.h>
int main()
{
int num[] = {2, 12, 8};
int sum=0;
int length = sizeof(num) / sizeof(num[0]);
for (int i = 0; i < length; i++) {
while (num[i]) {
sum += num[i] % 10;
num[i] /= 10;
}
}
printf("%d",sum);
return 0;
}