输入第一个字符串:今天是2020年6月23日。 18点有期末考试。
输出的结果是::2020 + 6 + 23 + 18 = 2067
第二个字符串:我出生是1999年12月31日
结果:1999 + 12 + 31 = 2042 ,今天是距离出生是7481
#include <iostream>
using namespace std;
int GetNum(const char* str,int* num) //输入:str---字符串指针,num---要保存数字的数组指针 返回:数字个数
{
int n = 0;
int in = 0;
for (int i = 0; str[i]; i++)
{
if (str[i] >= '0' && str[i] <= '9')
{
if (in)
{
num[n] = num[n] * 10 + str[i] - '0';
}
else
{
num[n] = str[i] - '0';
in = 1;
}
}
else
{
if (in)
{
in = 0;
n++;
}
}
}
return n;
}
int main()
{
char buffer[1000];
cin.getline(buffer, 1000);
int n;
int arr[100];
n = GetNum(buffer, arr);
int sum = 0;
for (int i = 0; i < n; i++)
{
sum += arr[i];
if (i == 0) cout << arr[i];
else cout << "+" << arr[i];
}
cout << "=" << sum;
return 0;
}