//问题描述:任意给定一个字符串,求字符串中含有的所有数字的和。例如:ac38dd9d 结果为:3+8+9=20
#include<stdio.h>
int sum(char* c);
int main(void)
{
char a[100];
printf("请输入任意一串字符\n");
scanf("%s",a);
printf("该串字符中的数字之和为:%d\n",sum(a));
}
int sum (char* c)
{
int i, sum=0;
for(i=0;c[i]!='\0';i++)
{//整型和字符型数据之间或字符型数据之间的算术运算和比较运算,都是整形数据和该字符对应的ASCII进行的运算
if(c[i]>='0'&&c[i]<='9')
sum+=c[i]-'0';
}
return sum;
}