较为复杂情况下的求和-hebust

计算一个给定序列的整数和,序列中可能会混入无关的字母,求和的时候需要忽略。
输入格式:

输入为一行,元素直接使用空格分割。
输出格式:

输出为序列整数部分的和。
输入样例:

在这里给出一组输入。例如:

1 2 3 a 4 5

输出样例:

在这里给出相应的输出。例如:

15

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int b[1000],j=0,i=0,sum=0;
    char c;
    while((c=getchar())!='\n')
     {
         if(isdigit(c))
        {
             ungetc(c,stdin);
             scanf("%d",&b[j++]);
         }
     }
     for(i=0;i<j;i++)sum+=b[i];
     printf("%d",sum);
    return 0;
}