输入一个字符串,字符串有数字以及其他字符,输出数字的和。比如shdvhsj425hdjbdjj56gj,求其中数字之和。425+56跟4+2+5+5+6这两个
#include <stdio.h>
int main()
{
char str[100];
gets(str);
int i = 0, x = 0, t,
sum1 = 0, sum2 = 0;
while (str[i])
{
if (str[i] >= '0' && str[i] <= '9')
{
t = str[i] - '0';
x = x * 10 + t;
sum2 += t;
}
else if (str[i] < '0' || str[i] > '9' || str[i + 1] == '\0')
{
sum1 += x;
x = 0;
}
i++;
}
printf("%d %d", sum1, sum2);
return 0;
}