请问我的为什么不对呢?到底哪里逻辑有问题?

来源:4-10 编程练习

长风o

2020-07-04 21:47

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

{

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

    {

        if(i==j || i+j==8)

        {

            Console.Write("O");

        }

        else

        {

            Console.Write(".");

        }

    }

    Console.WriteLine();

}

写回答 关注

5回答

  • 盲纵
    2020-07-06 16:22:12
    已采纳

    i和j都等于0的话符合if里面i==j的条件会打印出一个O,

    然后j经过7次循环最后值为6,此时i=0,j=6不符合i+j==8,输出"."

    所以第一行只会有一个O

    第二个外循环开始时,i=1,j=0第一个位置再输出"."

    问题就出来了

    http://img.mukewang.com/5f02ddb20001344802330160.jpg

  • weixin_慕函数1480334
    2022-06-14 12:23:11

    你既然是从0开始,那么相加应该==7,而不是8;

                for (int x = 1; x <= 7; x++)

                {

                    for (int y=1;y<=7;y++)

                    {

                        if (x==y||x+y==8)

                            Console .Write("O");

                        else 

                            Console .Write(".");

                    }

                    Console.WriteLine();

                }


  • Android精灵
    2021-03-16 16:07:26

    using System;

    using System.Collections.Generic;

    using System.Text;


    namespace Test

    {

        class Program

        {

            static void Main(string[] args)

            {

                //请完善代码

                for(int x=1;x<=7;x++){

                    for(int y=1;y<=7;y++)

                    {

                        if(x+y==8 || x-y==0)

                        {

                            Console.Write("o");

                        }

                        else

                        {

                            Console.Write(".");

                        }

                    }

                    Console.WriteLine();

                }

            }

        }

    }

    楼主可以参考一下我的,希望对你有帮助

  • weixin_慕用0282781
    2020-08-18 18:50:23

     for(int x=1;x<8;x++)
                {
                   for(int y=1;y<8;y++)
                   {
                      if(y==x||y==(8-x))
                      Console.Write('0');
                      else
                     Console.Write('.');
                   }
                   Console.WriteLine();
                  
                  
                }

  • 长风o
    2020-07-06 16:44:48

    谢谢热心解答!

C#开发轻松入门

本门课程是C#语言的入门教程,将带你轻松入门.NET开发

254118 学习 · 1459 问题

查看课程

相似问题