c语言从键盘输入n求1+2+...+n的结果并输出:while语句中为什么是n=n-1?不是n=n+1?

2025年02月28日 22:56
有4个网友回答
网友(1):

输入的是n,  要计算1到n的累加和, 反过来当然是 n, n-1, ... 1了

如果n = n + 1 的话不就成了>n的累加了么

 

 

你说的 n = n + 1 是用 从1开始的累加用习惯了吧

#include
void main()
{
int s,n,st = 1;
scanf("%d",&n);
s=0;
while (st  {
  s=s+n;
  st=st+1;     // 你说的是这样的情况才是 +1 
  }
printf("1+2+3+......+n=%d\n",s);
getch();
return 0;
}

网友(2):

题目与程序的思路有一点点的偏差而已。。。。。
程序是:n+(n-1)+(n-2)+(n-3)+...+2+1

网友(3):

第一次while循环 得到 s=0+n;(n减少一个);
第二次while循环 得到 s=s+n-1;
……
最后n减到0;跳出while循环 end

如果n为5那么 计算时候就是s=5+4+3+2+1

网友(4):

肯定是n=n-1了,现在要求1+2+...+(n-1)+n的值,s先加上n,再加上n-1,一直加到1