编写程序,求1-3+5-7+9……-99+101的值
这是我编的。#include<stdio.h>#include<math.h>main(){intsum,i,s,t;sum=0;i=1;s=1;t=1;while(fa...
这是我编的。#include <stdio.h>
#include <math.h>
main()
{
int sum,i,s,t;
sum=0;
i=1;
s=1;
t=1;
while (fabs(t)<=101)
{sum+=t;<br> i+=2;<br> s=-1*s;<br> t=i*s;}
printf("sum=%d\n",sum);
} 其中,(fabs(t)<=101)一项原来用的是t<=101。但求出来的值是-52。为什么要用这个函数。我是在网上查。看到相关的。才试着改出来的。 展开
#include <math.h>
main()
{
int sum,i,s,t;
sum=0;
i=1;
s=1;
t=1;
while (fabs(t)<=101)
{sum+=t;<br> i+=2;<br> s=-1*s;<br> t=i*s;}
printf("sum=%d\n",sum);
} 其中,(fabs(t)<=101)一项原来用的是t<=101。但求出来的值是-52。为什么要用这个函数。我是在网上查。看到相关的。才试着改出来的。 展开
3个回答
展开全部
fabs()
函数是取浮点数的绝对值
(fabs(t)<=101)
是取t的绝对值小于等于101
如用t<=101
因为t的值是正负交替的
则
当t=-103是也满足
循环多了一次
变成了
1-3+5-7+9.....-9+101-103
导致结果不正确
改为(fabs(t)<=101)后
当t值为-103是循环结束
结果正确
函数是取浮点数的绝对值
(fabs(t)<=101)
是取t的绝对值小于等于101
如用t<=101
因为t的值是正负交替的
则
当t=-103是也满足
循环多了一次
变成了
1-3+5-7+9.....-9+101-103
导致结果不正确
改为(fabs(t)<=101)后
当t值为-103是循环结束
结果正确
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-18
展开全部
fabs() 函数是取浮点数的绝对值
(fabs(t)<=101) 是取t的绝对值小于等于101
如用t<=101 因为t的值是正负交替的 则 当t=-103是也满足 循环多了一次
变成了 1-3+5-7+9.....-9+101-103 导致结果不正确
改为(fabs(t)<=101)后 当t值为-103是循环结束 结果正确
(fabs(t)<=101) 是取t的绝对值小于等于101
如用t<=101 因为t的值是正负交替的 则 当t=-103是也满足 循环多了一次
变成了 1-3+5-7+9.....-9+101-103 导致结果不正确
改为(fabs(t)<=101)后 当t值为-103是循环结束 结果正确
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询