软工2梁文超


私信TA

用户名:dotcpp0775066

访问量:897

签 名:

柠栀

等  级
排  名 2869
经  验 2126
参赛次数 2
文章发表 11
年  龄 0
在职情况 学生
学  校
专  业 软件工程

  自我简介:

c v工程师

题目描述:

编写一程序,在屏幕上输出如下内容:
 X  |  X  |  X
---+---+---
     |      |
---+---+---
O  |  O  |  O
注意:本题请同学们严格按照图形的格式输出,对齐,其中X和O为大写,否则系统会判为错误。


注意:当我们定义二维字符数组char arr[5][5]并初始化后,arr[1][0],arr[1][2],arr[1][4],arr[3][0],arr[3][2],arr[3][4] 赋值为'---'  。当我们用printf("%c",arr[1][0])

           时。会发现实际打印为'-',因此,这些地方的字符需要特殊处理。

              如图:

1720756769405090.png

处理后代码如下:


#include <stdio.h>

int main()

{

     char arr[5][5] = { { 'X' , '|' , 'X', '|' , 'X'},

                    {'---' ,'+', '---', '+','--- '}, 

                    {' ','|',' ','|',' '} ,

                    {'---' ,'+', '---', '+','--- '},

                    { 'O' , '|' , 'O', '|' , 'O'}};

     for (int i = 0; i < 5; i++)

     {

         for (int j = 0; j < 5; j++)

         {

             if (i == 1||i==3)

             {

                 if (j == 0 || j == 2 || j == 4)

                     printf("---");

                 else

                     printf("%c", arr[i][j]);

             }

             else

             printf(" %c", arr[i][j]);

         }

         printf("\n");

     }

     return 0;

}


 

0.0分

2 人评分

  评论区

  • «
  • »