为什么这个程序无法运行啊
求1-3+5-7+....-99+101的值.程序如下:#include "stdio.h"
main()
{ int i,sum;
i=1; sum=0;
while(i<=101)
{ sum=sum+i;
i=i+2;
i=-i; }
} 大家告诉我那错了啊?
搜索更多相关的解决方案:
运行
----------------解决方案--------------------------------------------------------
while(i<=101) { sum=sum+i; i=i+2; i=-i; } 这中间有错误 当第一次运行完后, i=-3,第二次时,sum=1-3;i=-3+2, 这有错,完后 i=-1;而后 i=1,后面就全错了
----------------解决方案--------------------------------------------------------
求1-3+5-7+....-99+101的值.程序如下:
#include <math.h>
main()
{
int i=1,sum=0;
while(i<=99)
{
sum=sum+i;
if(sum>0) i=-(fabs(i)+2);
else i=fabs(i)+2;
}
printf("%d",sum);
getch();
}
----------------解决方案--------------------------------------------------------
//求1-3+5-7+....-99+101的值.程序如下:
#include <stdio.h> #include <math.h>
int main() { int i; int count; int flag; int sum; int temp; i=1; count=0; flag=0; sum=0; temp=1; while(i<=101) { sum=sum+temp; i=i+2; ++count; if(count%2==1) temp=-i; else temp=i; } printf("The result is : %d\n",sum); return 0; }
----------------解决方案--------------------------------------------------------
#include <math.h>
main(){
int i=1,sum=1,k=1,m=0;
while(fabs(i)<=101)
{
sum=sum+m;
i+=2;
k=-k;
m=k*i;
}
printf("%d\n",sum);
getch();
}
----------------解决方案--------------------------------------------------------
三楼错了.应为
求1-3+5-7+....-99+101的值.程序如下:
#include <math.h>
main()
{
int i=1,sum=0;
while(i<=99)
{
sum=sum+i;
if(sum>0) i=-(fabs(i)+2);
else i=fabs(i)+2;
}
sum=sum+101;
printf("%d",sum);
getch();
}
//*这是因为程序只算到了-99,所以得出-50
----------------解决方案--------------------------------------------------------
求1-3+5-7+........-99+101的值,程序应为:
main()
{ int sign=1,i,sum=0;
i=1;
while(i<=101)
{ sum=sum+sign*i;
i+=2;
sign=-sign;
}
printf("%d",sum);
}
----------------解决方案--------------------------------------------------------
#include "stdio.h"
#include "conio.h"
main()
{ int i,sum,j,k=0;
i=1; sum=0;
while(i<=101)
{ k++;
j=(k%2==1)?1:-1;
sum=sum+j*i;
i+=2;
}
printf("%d",sum);
getch();
}
结果是:51
随云 的程序值得借鉴!
----------------解决方案--------------------------------------------------------