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

求大神解答

while(i<=100)    {        i++;        sum=sum+i*flag;        flag*=-1;            }怎么看这段代码的

正在回答

2 回答

可用,保证了偶数是负的。

#include <stdio.h>
int main()
{
    /* 
     * 小伙伴们:
     * 选择你们认为最合理的循环结构完成功能吧
     */
    int sum = 0;  // 定义计算结果变量sum
    int i = 1;    // 定义循环数字变量i
    int flag = 1; // 定义符号状态变量flag
    
    // 使用while循环
    while(i<=100) {
		i++; // 2
		sum = sum + i * flag; // 第一次flag=-1,第二次flag=1
		flag *= -1; // -1
	}
	
	// 初始化 
	sum = 0, i = 1;
	
	while(i<=100) {
		sum = sum + i * flag;
		flag *= -1;
		i++;
	}
	
	sum = 0, i = 1;
	
	while(i<=100)
    {
        sum += i%2 ? i : -i;
        i++;
        
    }
	
    printf("sum=%d\n",sum); 
    
    return 0;    
}


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

这个是个错误的代码吧? 看着像三目运算符 油箱for的循环结构 while的那个就不解释了,i++是i取值后加1

=的意思不是等于 是把右边的值赋给左边 *=是 flag乘以-1后 把商赋给flag  我也刚学完基础的。希望能给你帮助

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

举报

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

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

进入课程

求大神解答

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