[求助]算法程序 看下
算法1+2+3+4+5+…+100.
main()
{
int sign=1,sum=1,max=2,term;
while(max<=100)
{
term=sign*max; /* 这个步骤看不明白*/
sum=sum+term;
max=max+1;
}
printf("%d",sum);
}
抽个空帮我解释下!谢谢`
如果整个程序怎么运算都能解释出来!那就更好!
再次谢谢大家`
搜索更多相关的解决方案:
算法
----------------解决方案--------------------------------------------------------
term=sign*max; 这一行好像没什么意义啊
这个程序就是求1+2+3+……+100之和。
你是不是想求1-2+3-4+……-100 啊
那要让sign变号啊
sign=-sign;
----------------解决方案--------------------------------------------------------
你的程序和题目不是一个意思。
程序是求100!。
不是求和。
----------------解决方案--------------------------------------------------------
这个没用.
这个主要是为了求1-2+3-4+....+99-100的,符号变的话就要设置一个标识sign,然后再加一句sign*=-1;
----------------解决方案--------------------------------------------------------
LS的``我就是想问下`term=sign*max; 就是临时变量为什么要等于 符号和整数的相乘
如果改成相加~~得到的答案不死5050的`
----------------解决方案--------------------------------------------------------
3L的!我做的就是求和的`
如果如你说的求100!那程序怎么写``指点下`
----------------解决方案--------------------------------------------------------
#include<stdio.h>
int main()
{
int sign=-1,sum=1,max=2,term;
while(max<=100)
{
term=sign*max; /* 这个步骤看不明白*/
sum=sum+term;
max=max+1;
sign*=-1;
}
printf("%d",sum);
return 0;
}
这个程序是求1-2+3-4+5-......+99-100,你看了应该明白了吧,sign只是用来确定符号的,*1表示不变号,*-1表示变号
----------------解决方案--------------------------------------------------------
求1-2+3-4+5-......+99-100用上面那个程序貌似得不到正确的答案
----------------解决方案--------------------------------------------------------
以下是引用C语言的深度在2007-11-16 11:00:50的发言:
求1-2+3-4+5-......+99-100用上面那个程序貌似得不到正确的答案
求1-2+3-4+5-......+99-100用上面那个程序貌似得不到正确的答案
不会吧,口算就应该知道是-50了
----------------解决方案--------------------------------------------------------
可是你那个程序去运算下你就知道了`
等于5049!汗``那里出错了`
----------------解决方案--------------------------------------------------------