CaptainBiken 发表于 2020-9-4 12:58:59

C语言编码问题

本帖最后由 CaptainBiken 于 2020-9-4 13:09 编辑

以下代码应该输出国际象棋棋盘
我用devc++输出却不一样(不是乱码但也不是应该输出的图像)
(PS:系统为windows10,并且已经在cmd中使用命令mode con cp select=437)
代码如下:
#include<stdio.h>
int main()
{
        int i,j;
        for(i=0;i<8;i++)
        {
                for(j=0;j<8;j++)
                        if((i+j)%2==0)
                                printf("%c%c",219,219);
                        else printf(" ");
                printf("\n");
        }
       
        return 0;
}

题外话:
这里的if-else语句块没有加大括号,也被当做一条语句(复合语句)执行吗?

求各位佬们解答!

xieglt 发表于 2020-9-4 13:40:15

#include<stdio.h>
int main()
{
      int i,j;
      for(i=0;i<8;i++)
      {
                for(j=0;j<8;j++)
                        if((i+j)%2==0)
                              printf("%c%c",219,219);
                        //这里一个空格改成两个。
                        else printf("");
                printf("\n");
      }
      
      return 0;
}

baige 发表于 2020-9-4 20:40:33

https://wenda.so.com/q/1373413297060831

CaptainBiken 发表于 2020-9-4 21:57:10

baige 发表于 2020-9-4 20:40
https://wenda.so.com/q/1373413297060831

兄弟我这不是乱码.....

CaptainBiken 发表于 2020-9-4 22:01:04

xieglt 发表于 2020-9-4 13:40


感谢
我把%c%c去掉一个之后就能成功输出了
不知道为什么我这个电脑上两个黑色块之间会出现一道白线...
页: [1]
查看完整版本: C语言编码问题