forlorn pedestrian 2021-06-25 22:54 采纳率: 100%
浏览 38
已采纳

c语言 为啥最终结果是-1,for循环没有执行

int main() {
    int a, i;
    for (a = 1, i = -1; -1 <= i < 1; i++) {
        a++;
        printf("%2d\n", a);
    }
    printf("%2d", i);
    return 0;
}

  • 写回答

2条回答 默认 最新

  • 暖晴的天 2021-06-25 22:59
    关注

    分析如下: 

    int main()
    {
        int a, i;
        //问题在 -1 <= i < 1  按先左后右原则计算  -1<=i 为真 也就是 (-1<=i) 的值等于 1
        //再计算 1<1 为假,不执行循环
        for (a = 1, i = -1; -1 <= i < 1; i++)  
        {
            a++;
            printf("%2d\n", a);
        }
        printf("%2d", i);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 easypoi导出复杂excel
  • ¥20 C++初高中竞赛题,devc++可以通过的
  • ¥60 二次元手游日常任务自动化代肝(相关搜索:自动化)
  • ¥15 mysql将查询的结果作为动态列名怎么实现
  • ¥50 python自动地图截图脚本
  • ¥20 瑞萨RA4M1芯片刷写为arduino r4 minima
  • ¥15 fastreport怎么判断当前页数
  • ¥15 Kylin-Desktop-V10-GFB-Release-JICAI_02- 2207-Build14-ARM64.iso有没有这个版本的系统啊
  • ¥15 能不能通过蓝牙将传感器数据传送到手机上
  • ¥20 100元python和数据科学实验项目