编程TS 发表于 2023-7-13 12:26:53

为什么打出来的飞机会有多出来的n和*

#include <stdio.h>

int main() {
        printf("\n\
         @\n\
      / \\n\
      * *\n\
      * *\n\
      * *\n\
    * * * * * *\n\
* * * * * * * *\n\
* * * * * * * * * *\n\
      * *\n\
      * *\n\
      * * * *\n\
    * * * * * *\n                ");
        return 0;
}

陶远航 发表于 2023-7-13 12:27:26

在你提供的代码中,打印飞机图案的字符串中包含了转义字符\n和\*。转义字符\n表示换行,转义字符\*表示打印星号*。

然而,在 "\/ \\n" 这一行中存在问题。使用了转义字符\来转义/和\自身,但是在\/和\\之间没有空格分隔,导致它们连在一起形成了一个无法识别的转义序列。这可能会导致输出结果不符合预期。

另外,在字符串最后一行需要注意缩进的问题。它必须和前面的内容保持一致。

以下是修复后的代码:

#include <stdio.h>

int main() {
    printf("\n@\n/ \\\n* *\n* *\n* *\n* * * * *\n* * * * * * *\n* * * * * * * * *\n* *\n* *\n* * *\n* * * * *\n               ");
   
    return 0;
}


修复后的代码中,我将转义字符\与/和\分别用空格分隔开来,以正确地打印飞机图案。另外,我调整了最后一行的缩进,使其与前面内容对齐。

希望这可以解决你的问题!

歌者文明清理员 发表于 2023-7-13 12:28:51

陶远航 发表于 2023-7-13 12:27
在你提供的代码中,打印飞机图案的字符串中包含了转义字符\n和\*。转义字符\n表示换行,转义字符\*表示打印 ...

《没有空格》

sfqxx 发表于 2023-7-13 13:41:35

小号?

中英文泡椒 发表于 2023-7-13 16:33:03

sfqxx 发表于 2023-7-13 13:41
小号?

让甲鱼哥查查{:10_256:}
页: [1]
查看完整版本: 为什么打出来的飞机会有多出来的n和*