C 如何添加字符串中的数字?
我该怎么做呢?我想为这个问题提供一个非常基本的解决方案C 如何添加字符串中的数字?,c,arrays,string,pointers,casting,C,Arrays,String,Pointers,Casting,我该怎么做呢?我想为这个问题提供一个非常基本的解决方案 sum=1+2+3+4+5 sum=15 1) 将给定字符串转换为整数并将其值存储到变量中,例如使用函数atoi()函数n。通过单击了解更多信息。顺便说一句,很容易理解,它只是将括号中提到的字符串改为整数。 2) 然后使用for循环计算总和 在这里,我为您的问题提供了我的解决方案,我认为您在追踪代码方面不会有任何问题。如果需要任何帮助,请随时发表评论:) 下面是我的代码: int sum = 0; char *a = "12345";
sum=1+2+3+4+5
sum=15
1) 将给定字符串转换为整数并将其值存储到变量中,例如使用函数atoi()
函数n
。通过单击了解更多信息。顺便说一句,很容易理解,它只是将括号中提到的字符串改为整数。
2) 然后使用for循环
计算总和
在这里,我为您的问题提供了我的解决方案,我认为您在追踪代码方面不会有任何问题。如果需要任何帮助,请随时发表评论:)
下面是我的代码:
int sum = 0;
char *a = "12345";
while (*a) {
sum += *a - '0';
a++;
}
printf("sum=%d\n", sum);
#包括
#包括
int main()
{
int n,i,sum=0;//i是循环参数,sum用于存储数字的和
char*a=“12345”;
n=atoi(a);//atoi(string)函数用于将字符串更改为整数
printf(“%d”,n);
for(i=0;a[i]!='\0';i++)//循环来计算和
{
总和=总和+(n%10);
n=n/10;
}
printf(“\n\nsum=%d\n\n”,总和);
}
希望能有所帮助。我想为这个问题提供一个非常基本的解决方案 1) 将给定字符串转换为整数并将其值存储到变量中,例如使用函数
atoi()
函数n
。通过单击了解更多信息。顺便说一句,很容易理解,它只是将括号中提到的字符串改为整数。
2) 然后使用for循环
计算总和
在这里,我为您的问题提供了我的解决方案,我认为您在追踪代码方面不会有任何问题。如果需要任何帮助,请随时发表评论:)
下面是我的代码:
int sum = 0;
char *a = "12345";
while (*a) {
sum += *a - '0';
a++;
}
printf("sum=%d\n", sum);
#包括
#包括
int main()
{
int n,i,sum=0;//i是循环参数,sum用于存储数字的和
char*a=“12345”;
n=atoi(a);//atoi(string)函数用于将字符串更改为整数
printf(“%d”,n);
for(i=0;a[i]!='\0';i++)//循环来计算和
{
总和=总和+(n%10);
n=n/10;
}
printf(“\n\nsum=%d\n\n”,总和);
}
希望对初学者有用。
1+2+3+4+5
对于初学者来说是15
而不是14
。1+2+3+4+5
对于初学者来说是15
而不是14
。对于初学者来说,你应该提供一些解释或注释让OP理解它:-)@ameyCU some one(顺便说一句,我很感谢)将指令更改为此sum+=*a++-'0'代码>虽然它很优雅,但对于初学者来说并不清楚。@milevyo我指的是所有代码。但是,是的,这可能会让人困惑。@milevyo我不认为编辑是优雅的,它使代码更难阅读,而且也很危险,因为将++
运算符与其他运算符混合使用是不好的做法。在单独一行中使用a++
编写的代码更好、更安全,这与它对初学者更友好无关。此外,编辑不应该改变文章的编码风格。这是一个糟糕的编辑,就这么简单。我相信你总是可以选择拒绝编辑你自己的帖子。对于初学者,你应该给OP提供一些解释或评论来理解它:-)@ameyCU某个人(顺便说一句,我很感谢)更改了这个sum+=*a++-'0'的说明代码>虽然它很优雅,但对于初学者来说并不清楚。@milevyo我指的是所有代码。但是,是的,这可能会让人困惑。@milevyo我不认为编辑是优雅的,它使代码更难阅读,而且也很危险,因为将++
运算符与其他运算符混合使用是不好的做法。在单独一行中使用a++
编写的代码更好、更安全,这与它对初学者更友好无关。此外,编辑不应该改变文章的编码风格。这是一个糟糕的编辑,就这么简单。我相信你总是可以选择拒绝编辑自己的帖子。
#include <stdio.h>
#include <string.h>
int main()
{
int n,i,sum=0; //i is loop parameter and sum is used to store the sum of numbers
char *a="12345";
n=atoi(a); //atoi(string) function is used to change a string into integer
printf("%d",n);
for(i=0;a[i]!='\0';i++) //loop to calculate the sum
{
sum=sum+(n%10);
n=n/10;
}
printf("\n\nsum = %d\n\n",sum);
}