C语言编程1-2+3-4+5-6+~~+99-100

如题所述

为此题提供两种做法:一是把此数列连续的奇数项和偶数项结合起来构成一个新数列,它就变成-1,-1,-1,...,-1共50项这样一个数列,C编程当然就很简单了。另一种是用一个for循环遍历1~100,计数变量为奇数时向和累加计数变量的值,而计数变量为偶数时从和减去计数变量的值。举例代码如下:

(1)

#include "stdio.h"
int main(int argc,char *argv[]){
printf("1-2+3-4+...+99-100 = %d\n",(1-2)*50);
return 0;
}

运行结果如下:

(2)

#include "stdio.h"
int main(int argc,char *argv[]){
int s,i;
for(s=0,i=1;i<101;i++)//遍历1~100
s += i&1 ? i : -i;//i为奇数时取正向s累加,i为偶数时取负向s累加
printf("1-2+3-4+...+99-100 = %d\n",s);
return 0;
}

运行结果如下:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-07-05
1-2+3-4+5-6+.+99-100
=(1-2)+(3-4)+(5-6)+.+(99-100)
=-1×100÷2(这里指一共有50组的意思,将100个数分成50组,每组两个数相减)
=-50本回答被网友采纳
第2个回答  2013-07-20
#include "stdio.h"
main()
{
int i=1,j;
int sum=0;
for(j=1;j<=100;j++)
{
if(i%2)
sum=sum+i;
else
sum=sum-i;
i++;
}
printf("sum is %d",sum);
}
结果为-50本回答被网友采纳
第3个回答  2013-07-20
#include<stdio.h>
void main()
{
int sum=0,i;
for(i=1;i<=100;i++)
{
if(i%2==0)sum-=i;
else sum+=i;
}
printf("%d\n",sum);
}
第4个回答  2013-07-20
#include<stdio.h>
void main(){
int i,t,s;
t=1;s=0;
for(i=1;i<=100;i++)
s+=t*i,t=-t;
printf("%d\n",s);
}