C语言求 1-3+5-7+...-99+101的值

#include<stdio.h>main(){inti,j=1,sum=0;for(i=1;i<102;i++){if(i%2!=0&&j%2!=0){sum=sum+... #include<stdio.h>
main()
{ int i,j=1,sum=0;
for(i=1;i<102;i++)
{
if(i%2!=0&&j%2!=0)
{
sum=sum+i;
j++;
}
if(i%2!=0&&j%2==0)
{
sum=sum-i;
j++;
}

}
printf("%d",sum);
getchar();
}
哪里错了??怎么显示是0?
展开
 我来答
ahcc08
推荐于2018-02-11 · 知道合伙人软件行家
ahcc08
知道合伙人软件行家
采纳数:11853 获赞数:51935
拥有丰富的软件开发经验。

向TA提问 私信TA
展开全部
#include<stdio.h>

void main()
{
    int i,sum=0;

    int j = 1;

    // 这里最多循环51
    for (i=1; (2*i -1) < 102; i++)
    {
        if(i%2!=0)
        {
            sum=sum + (2*i -1);

            printf("+%d", (2*i -1));
        }
        else
        {
            sum=sum-(2*i -1);

            printf("-%d", (2*i -1));
        } 

    }
    printf("= \n%d",sum);
    getchar();
}

运行结果如下:

myyouping
2014-06-15
知道答主
回答量:8
采纳率:0%
帮助的人:8.1万
展开全部
肯定是0了,因为如果满足
if(i%2!=0&&j%2!=0)
{
sum=sum+i;
j++;
}
这个循环要求的话,
肯定也满足
if(i%2!=0&&j%2==0)
{
sum=sum-i;
j++;
}
这个循环了,一个加i,一个减i,就互相抵销了
为什么说满足if(i%2!=0&&j%2!=0)条件的肯定也满足if(i%2!=0&&j%2==0)条件呢,因为你在满足if(i%2!=0&&j%2!=0)条件中写了j++,在j%2!=0的情况下,j++之后,肯定就满足j%2==0等于0 了。解决办法就是加else语句了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
下茨回粉号302
2014-06-15 · TA获得超过100个赞
知道答主
回答量:133
采纳率:60%
帮助的人:57.2万
展开全部
#include <stdio.h>
int main()
{
int i,k=1,sum;

for(sum=0,i=1;i<101;i+=2,k++)
sum+=(k%2==1?1:-1)*(2*i-1);
printf("1-3+5-7+...+101=%d\n",sum);
return 0;
}
满意请采纳。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
White_MouseYBZ
2014-06-15 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6472万
展开全部
你的代码无法改哟……
//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
void main(void){
int i,n;
for(n=0,i=1;i<102;i+=2,n++);
printf("The result is %d\n",n&1 ? n : -n);
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
之马甜u
2018-07-18
知道答主
回答量:2
采纳率:0%
帮助的人:1677
展开全部
#include<stdio.h>
#include<math.h>
void main()
{
int n,s=1,sum=0;
for(n=1;n<=101;n+=2)
{sum=sum+n*s;
s=-s;}
printf("sum=%d\n",sum);

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式