YuMu2012 2022-09-10 17:08 采纳率: 70%
浏览 27
已结题

这串代码好奇怪啊,为什么a最后是10?

这串代码好奇怪啊,为什么a最后是10?
#include<stdio.h>
int main() {
int i = 0;
int j = 0;
int a = 0;
for (; i < 10; i++) {
for (; j < 10; j++) {
a++;
}
}
printf("%d", a);
return 0;
}

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2022-09-10 17:15
    关注

    因为内层循环只会执行一遍,第二遍执行时由于j值没有复位为0,因此一直是11,导致后续内层循环无效,a值不变,始终是第一次循环结束后的结果10
    如果改成for(j=0;j<10;j++)才会不一样

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月19日
  • 已采纳回答 9月11日
  • 创建了问题 9月10日