C语言程序运行异常的问题

程序里变量都进行了定义,可是提示错误,缺少分号和未定义字符。
怎么解决呀?


#include
#include
int main()
{ 
    char str[80]={0};
    scanf("%s",str);
    int sum=0,i=0,t=0,len=strlen(str);
for(i=0;iif(str[i]>='0'&&str[i]<='9')
        do{
            sum=sum*10+str[i]-'0';
            t=t+sum;
            i++;

        }while(str[i]>='0'&&str[i]<='9');
}
   printf("%d",t);
   return 0;
}


img

上面的显示错了
我的代码是这样的


还有,我的程序是这样的
#include<stdio.h>
#include<string.h>
int main()
{ 
    char str[80]={0};
    scanf("%s",str);
    int sum=0,i=0,t=0,len=strlen(str);
for(i=0;i<len;i++)
{  
    if(str[i]>='0'&&str[i]<='9')
        do{
            sum=sum*10+str[i]-'0';
            t=t+sum;
            i++;

        }while(str[i]>='0'&&str[i]<='9');
}
   printf("%d",t);
   return 0;
}

是不是因为for循环条件里面,i=0;的后面多了个i

修改如下,供参考:

#include <stdio.h>
#include <string.h>
int main()
{
    char str[80]={0};
    scanf("%s",str);
    int sum=0,i=0,t=0,len=strlen(str);
    for(i=0;i<len;i++)
    {
        if(str[i]>='0' && str[i]<='9')
        {
            sum=sum*10+str[i]-'0';
            //t=t+sum;
            //i++;
        }
   }
   printf("%d", sum); //printf("%d",t);
   return 0;
}