首页 > 解决方案 > 这里的输出应该是什么?

问题描述

在我看来,输出应该是EMAM5 次,但它打印了EMAM6 次。任何人都可以解决这个问题吗?一点解释会很有帮助。

#include <stdio.h>

int main()
{
    int n = 0;
    while(n < printf("EMAM\n"))
    {
        n++;
    }
    return 0;
}

标签: cwhile-loopprintf

解决方案


由于 n 值为 0、1、2、3、4 和 5,它会打印 5 次。当 n 为 5 时,它不会再次循环,但仍会打印出消息。


推荐阅读