123666666 发表于 2022-4-15 15:33:20

国际象棋怎么输出啊?

#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;
}


为什么我的输出是这个样子的?

fishc@localhost ~]$ gcc quetion9.c &&./a.out
��������[fishvi quetion9.cion9.c &&./a.out
$ gcc quetion9.c &&./a.out
��

��

��

��


andy大宝 发表于 2022-4-15 15:43:06

为什么我打印出了这个:









--------------------------------
Process exited after 0.1157 seconds with return value 0
请按任意键继续. . .

123666666 发表于 2022-4-15 15:59:11

andy大宝 发表于 2022-4-15 15:43
为什么我打印出了这个:

我输出的是乱码

傻眼貓咪 发表于 2022-4-15 16:01:33

#include<stdio.h>

int main()
{
    system("chcp 437"); // <--------------- 这里
    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;
}

123666666 发表于 2022-4-15 16:47:25

傻眼貓咪 发表于 2022-4-15 16:01


我这边显示

sh: chcp: 未找到命令

傻眼貓咪 发表于 2022-4-15 21:41:25

123666666 发表于 2022-4-15 16:47
我这边显示

sh: chcp: 未找到命令

兄弟,请问你用的是什么编译器?因为是我试试了 Vision Studio 2019 、DEV C++、和 gdb 没有问题(我是 Windows)

123666666 发表于 2022-4-16 03:52:31

傻眼貓咪 发表于 2022-4-15 21:41
兄弟,请问你用的是什么编译器?因为是我试试了 Vision Studio 2019 、DEV C++、和 gdb 没有问题(我是 W ...

Oracle VM VirtualBox

傻眼貓咪 发表于 2022-4-16 08:20:42

123666666 发表于 2022-4-16 03:52
Oracle VM VirtualBox

抱歉了兄弟,这我就没有办法,因为我没有用过虚拟器,不知道如何写。{:10_269:} 可能在 Oracle VM VirtualBox 里,system 函数有其它写法吧。

人造人 发表于 2022-4-16 12:12:46

傻眼貓咪 发表于 2022-4-16 08:20
抱歉了兄弟,这我就没有办法,因为我没有用过虚拟器,不知道如何写。 可能在 Oracle VM Virtua ...

linux下有一个iconv命令

/*
#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;
}
*/
#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");
    }
    {
      unsigned char graph[] = {
            {201, 205, 205, 205, 203, 205, 205, 205, 187},
            {186, ' ', ' ', ' ', 186, ' ', ' ', ' ', 186},
            {204, 205, 205, 205, 206, 205, 205, 205, 185},
            {186, ' ', ' ', ' ', 186, ' ', ' ', ' ', 186},
            {200, 205, 205, 205, 202, 205, 205, 205, 188}
      };
      for(size_t y = 0; y < 5; ++y) {
            for(size_t x = 0; x < 9; ++x) {
                putchar(graph);
            }
            putchar('\n');
      }
    }
    return 0;
}


傻眼貓咪 发表于 2022-4-16 12:29:09

人造人 发表于 2022-4-16 12:12
linux下有一个iconv命令

还是大神厉害,我没有用过 linux,想说楼主的可能是 linux。

123666666 发表于 2022-4-17 22:38:34

傻眼貓咪 发表于 2022-4-15 21:41
兄弟,请问你用的是什么编译器?因为是我试试了 Vision Studio 2019 、DEV C++、和 gdb 没有问题(我是 W ...

小甲鱼教程里的
页: [1]
查看完整版本: 国际象棋怎么输出啊?