В этом упражнении вводится символьный массив, а затем добавляются цифры числа.
#include <iostream>
#include <cstring>
#include <cstdlib>
using namespace std;
int main() {
//Input a series of single digit numbers
char numbers[] = "a";
cout << "Input a series of single digit numbers." << endl;
cin >> numbers;
//convert the character array into a int array.
int sum = 0;
for (int i = 0; i < size; i++) {
sum += atoi(numbers[i]);
}
cout << "Sum of digits: " << sum;
return 0;
}
Функция atoi, по моему пониманию, одновременно конвертирует только целые массивы символов (строки C), и я полагаю, что не могу пройтись по массиву, но, похоже, это должно сработать. Мой другой вариант состоял в том, чтобы преобразовать Cstring в одно большое целое число, а затем использовать длину строки, чтобы пройти и вычислить цифры в каждой позиции, но это, вероятно, более неэффективно, чем я мог бы это сделать.
Что бы вы использовали, чтобы найти однозначные числа в виде целых чисел для массива символов?