【问题标题】:Segmentation fault in iterative summation [duplicate]迭代求和中的分段错误[重复]
【发布时间】:2014-09-21 09:46:08
【问题描述】:

编写一个程序来读取一个整数并继续添加数字直到 我们得到一个数字。例如,7976 的输出为 2 (7976 - - t 29 - - t 11 - - t 2).

为此,你的main()函数必须调用函数sumdigits(0)来解决 问题,然后打印最终结果。

我已经解决了这个问题并且逻辑是正确的,我没有得到任何输出当我输入我的输入时它只是移动到下一行。

#include <stdio.h>

sumdigits(int x)
{
  int n = x;
  int y = 0;

  while(n>0) {
    y = y + n % 10;
    n = n / 10;
  }
  return y;
}

int main(void)
{
 int a;

 scanf("%d",&a);

 while(a>10) {
   a=sumdigits(a);
 }

 printf("%d",a);
}

【问题讨论】:

  • 感谢问题解决

标签: c++ c segmentation-fault


【解决方案1】:

这行有问题

scanf("%d",a);

应该是

scanf("%d", &a);
//----------^  use &

【讨论】:

  • 感谢问题解决
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-10
  • 1970-01-01
  • 1970-01-01
  • 2015-02-05
  • 2016-03-04
  • 2016-02-28
相关资源
最近更新 更多