为了账号安全,请及时绑定邮箱和手机立即绑定

请问为什么这样写不行?

#include <stdio.h>

int main()

{

    /* 小伙伴们:

           选择你们认为最合理的循环结构完成功能吧 */

    int sum = 0;  //定义计算结果变量sum

    int i = 1;    //定义循环数字变量i

    int flag = 1; //定义符号状态变量flag

    do

    {

        if (i%2!=0)

        {

            sum+=i;

        }

        else

        {

            sum-=i;

        }

        i++;

    }while(i<100);

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

    return 0;

   


正在回答

4 回答

首先题目要求是 1-2+3-4+5 这样就是有个变符号的形式。flag题目给的是1 在循环里面乘以-1就会不断的变成1和-1,在用i去乘以flag i在不断增加的过程中也会不断的变符号。所以应为 sum+=i*flatg; flag*=-1;就是他中间有个变符号的过程

0 回复 有任何疑惑可以回复我~
#1

qq_无意跌入你心海_0 提问者

非常感谢!
2018-08-17 回复 有任何疑惑可以回复我~

是不是因为你结尾少了一个“}“”  对应第一个“}”, 我看你少了一个}   你发的这个我试着写了一遍用这种逻辑去计算的话发现没问题呀

0 回复 有任何疑惑可以回复我~

已经可以了

0 回复 有任何疑惑可以回复我~

报的什么错?

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926207    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

请问为什么这样写不行?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信