【问题标题】:How do I subtract multiple inputted numbers in a loop?如何在循环中减去多个输入的数字?
【发布时间】:2021-11-21 13:34:41
【问题描述】:

程序应该通过一个循环(最多 10 个数字)收集用户输入的数字,如果用户输入负数则中断。收集输入后,它应该计算和、差、积和商。我的问题是我不知道找到差异的正确方法,我知道这一点是因为计算器的答案与程序的不同。

#include <stdio.h>

int main() {
int i;
double number, sum = 0.0, difference = 0, product = 1, quotient = 1;

for (i = 1; i <= 10; ++i) {
  printf("Enter n%d: ", i);
  scanf("%lf", &number);

  // if the user enters a negative number, break the loop
  if (number < 0.0) {
     break;
  }

  sum += number; // sum = sum + number;
  difference = number;
  product *= number;
  quotient = number / quotient;
}

printf("Sum = %.2lf", sum);
printf("\nDifference = %.2lf", difference);
printf("\nProduct = %.2lf", product);
printf("\nQuotient = %.2lf", quotient);

return 0;
}

【问题讨论】:

  • 你如何定义10个数字的“差异”?是否将第一个数字添加到0,然后从结果中减去所有后续数字?或者是从初始数字0中减去所有10个数字,这样最终的结果就是所有数字的总和乘以-1

标签: c loops subtraction


【解决方案1】:
double sum=0, difference=0, product =1 , quotient=1;
for (i = 1; i <= 10; ++i) {
  printf("Enter n%d: ", i);
  scanf("%lf", &number);
  if(number<0){
    break;
  }
  sum += number;
  difference -= number;
  product *= number;
  quotient = number/quotient;
}

我假设你还没有数组知识。

【讨论】:

  • 是的,我们还没有讨论过它,我认为我们不应该使用它。
  • 我只是想纠正逻辑。语法和缩进不是这里的动机。谢谢我已经更正了。
猜你喜欢
  • 1970-01-01
  • 2021-02-14
  • 2021-11-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-13
相关资源
最近更新 更多