You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何输出并累加两个整数间的所有偶数?现有代码仅能升序输出区间值

C语言区间偶数输出及求和实现

需求说明

  • 接收两个输入整数
  • 输出两个整数区间内的所有偶数
  • 统计并输出区间内所有偶数的总和

原代码问题

当前代码仅实现了区间内整数的倒序输出,未实现偶数筛选、偶数求和功能,且main函数写法不符合C标准规范,原代码如下:

#include <stdio.h>

main() {
  int a;
  int b;

  printf("Enter integer a:");
  scanf("%d", &a);

  printf("Enter integer b:");
  scanf("%d", &b);

 if(b > a)
  {
      do {
        printf("Result: %d\n", b);
        b--;
      } while (a <= b);
  }
  else
  {
      do {
        printf("Result: %d\n", a);
        a--;
      } while (a >= b);
  }
  
  }

修改后可用代码

#include <stdio.h>

int main() {
    int a, b;
    int start, end;
    int sum = 0;

    printf("Enter integer a:");
    scanf("%d", &a);
    printf("Enter integer b:");
    scanf("%d", &b);

    // 自动确定区间上下边界,无需考虑输入顺序
    start = a < b ? a : b;
    end = a > b ? a : b;

    printf("区间内的偶数如下:\n");
    for (int i = start; i <= end; i++) {
        // 筛选偶数
        if (i % 2 == 0) {
            printf("%d\n", i);
            sum += i;
        }
    }
    printf("区间内偶数总和为:%d\n", sum);

    return 0;
}

核心修改说明

  • 调整main函数定义为int main(),末尾添加return 0;,符合C语言语法标准
  • 新增边界判断逻辑,自动适配两个输入整数的大小顺序,简化分支代码
  • 新增偶数判断逻辑:用i % 2 == 0筛选偶数,仅对符合条件的数值做输出和累加
  • 新增求和变量sum,遍历过程中累加符合条件的偶数,遍历结束后输出总和

内容的提问来源于stack exchange,提问作者user17383357

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 19:06:06