ljy5011 发表于 2021-10-3 00:43:22

求助,不是很理解

{:10_269:}.

湫的小草原 发表于 2021-10-3 07:09:39

{:10_249:}

jhq999 发表于 2021-10-3 07:50:24

本帖最后由 jhq999 于 2021-10-3 10:09 编辑

3#
#的位置在3n+2(n=0->无穷大)的位置才能退出循环
犯了个错误,第三部分是后运行的

hrpzcf 发表于 2021-10-3 08:43:33

#include <stdio.h>

int main(void)
{
    char c;

    // #####第1部分##########第2部分###########第3部分#####
    for (c = getchar(); getchar() != '#'; c = getchar())
      putchar(c);

    return 0;
}

// 结果是 13

// 输入 12345# 回车
// 进入循环,执行第1部分 c = getchar(),c=1
// 执行第2部分getchar() != '#',getchar()得到2,结果为true,往下执行putchar(c),但c没有被重新赋值所以值还是1,执行putchar(c)打印1
// 执行第3部分 c = getchar(),此时 c=3
// 执行第2部分getchar() != '#',getchar()得到4,结果为true,往下执行putchar(c),但c没有被重新赋值所以值还是3,执行putchar(c)打印3
// 执行第3部分 c = getchar(),此时 c=5
// 执行第2部分getchar() != '#',getchar()得到#,结果为false,结束循环

ljy5011 发表于 2021-10-3 10:03:06

hrpzcf 发表于 2021-10-3 08:43


谢谢好大哥
页: [1]
查看完整版本: 求助,不是很理解