24855人加入学习
(72人评价)
C#编程-第一季-编程基础-宇宙最简单2021最新版

制作完成于2021年10月10日,使用Visual Studio 2019

价格 免费

            //输⼊⼀个正整数n,输出n层的菱形。

            int n = Convert.ToInt32(Console.ReadLine());

            for (int i = 1; i <= 2*n-1; i++)//直接列出总行数 用if区分上下两边
            {
                if (i <= n)//上半边
                {
                    for (int j = 0; j < n - i; j++)//n-i 个空白
                    {
                        Console.Write(" ");
                    }
                    for (int j = 0; j < 2 * i - 1; j++)//2*i-1 个*
                    {
                        Console.Write("*");
                    }
                }
                if (i > n)//下半边
                {
                    for (int j = 0; j < i-n; j++)//i-n 个空白
                    {
                        Console.Write(" ");
                    }
                    for (int j = 2*(2*n-i)-1; j>0 ; j--)//2*i-1 个*
                    {
                        Console.Write("*");
                    }
                }

                Console.WriteLine();//换行
            }
            Console.ReadKey();

 

[展开全文]
using System;

namespace _026_循环嵌套
{
    class Program
    {
        static void Main(string[] args)
        {
            //int n = Convert.ToInt32(Console.ReadLine());
            //for (int i = 1; i <= n; i++)
            //{
            //    for (int j = 0; j < i - 1; j++)
            //    {
            //        Console.Write(" ");
            //    }
            //    for (int j = 0; j < n; j++)
            //    {
            //        Console.Write("*");
            //    }
            //    Console.WriteLine();
            //}


            //int n = Convert.ToInt32(Console.ReadLine());
            //for (int i = 1; i <= n; i++)
            //{
            //    // n-i个空格  i个*
            //    for (int j = 0; j < n - i; j++)
            //    {
            //        Console.Write(" ");
            //    }
            //    for (int j = 0; j < i; j++)
            //    {
            //        Console.Write("*");
            //    }
            //    Console.WriteLine();
            //}


            //int n = Convert.ToInt32(Console.ReadLine());
            //for (int i = 1; i <= n; i++)
            //{
            //    // n-i 2*i-1
            //    for (int j = 0; j < n - i; j++)
            //    {
            //        Console.Write(" ");
            //    }
            //    for (int j = 0; j < 2 * i - 1; j++)
            //    {
            //        Console.Write("*");
            //    }
            //    Console.WriteLine();
            //}


            int n = Convert.ToInt32(Console.ReadLine());
            for (int i = 1; i <= n; i++)
            {
                // n-i 2*i-1
                for (int j = 0; j < n - i; j++)
                {
                    Console.Write(" ");
                }
                for (int j = 0; j < 2 * i - 1; j++)
                {
                    Console.Write("*");
                }
                Console.WriteLine();
            }
            //n-1总行数
            for (int i = 1; i <= n - 1; i++)
            {
                for (int j = 0; j < i; j++)
                {
                    Console.Write(" ");
                }
                //*
                //n-1-i+1 = n-i  *2-1
                for (int j = 0; j < 2 * (n - i) - 1; j++)
                {
                    Console.Write("*");
                }
                Console.WriteLine();
            }
        }
    }
}

 

[展开全文]

            int n = Convert.ToInt32(Console.ReadLine());
            for (int a = 1; a < n + 1; a++)
            {
                for (int i = 0; i < n; i++)
                {
                    Console.Write("*");
                }
                Console.WriteLine();
                for (int temp = 1; temp < a + 1; temp++)
                {
                    Console.Write(" ");
                }
            }

虽然方法不一样但是看了一下老师的觉得老师的跳楼更清晰

[展开全文]

第七十二课  利用循环嵌套输出各种各样的图形

1. 输入正整数n,输出n行,每行n个*的平行四边形。

样例输入5

样例输出

*****
 *****
  *****
   *****
    *****

int n= Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < n; i++)
{
    for (int j = 0; j < i; j++)
    {
        Console.Write(" ");
    }
    for (int t = 0; t < n; t++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

2. 输入一个正整数n,输出n层的右三角形。

样例输入4

样例输出

   *
  **
 ***
****

int n= Convert.ToInt32(Console.ReadLine());
for (int i = n; i > 0; i--)
{
    for (int t = 1; t < i; t++)
    {
        Console.Write(" ");
    }
    for (int j = 0; j < n - (i - 1); j++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

改成老师的方法:

int n = Convert.ToInt32(Console.ReadLine());
for(int i = 1; i <= n; i++)
{
    for(int j = 0; j < n - i; j++)
    {
        Console.Write(" ");
    }
    for(int j = 0; j < i; j++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

老师的写法怎么看都想是代数,但这样的方法简洁直观。

int n= Convert.ToInt32(Console.ReadLine());
for(int i = 1; i <= n; i++)
{
    for(int j = 0; j < n - i; j++)
    {
        Console.Write(" ");
    }
    for(int j = 0; j < i; j++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

我给大家按照代数的方法说一下哈。

设行数与每行字符为n,空格为j,星号为i。

每一样的空格为:n-i(i是遍历的,所以随着 i 的遍历,n-i的结果越来越少,所以每行空格越来越少)。

那么i代表*好,随着i++的遍历越来越多。

所以他们结合在一起就实现了以上星星的排列。

3. 输入一个正整数n,输出n层的等腰三角形。

样例输入4

样例输出

   *
  ***
 *****
*******

自己的写法:

int n= Convert.ToInt32(Console.ReadLine());
for (int i = n; i > 0; i--)
{
    for (int t = 1; t < i; t++)
    {
        Console.Write(" ");
    }
    for (int j = 0; j < n - (i - 1); j++)
    {
        Console.Write("*");
    }
    for (int m = 2; m < n - (i - 2); m++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

我的方法是,将上一题的星星排列方法基础上,再写一部分程序,将少的那部分星星加上。

(明天再来看老师的课,先忙一会去)

老师的方法:

int n= Convert.ToInt32(Console.ReadLine());
for(int i = 1; i <= n; i++)
{
    for(int j = 0; j < n - i; j++)
    {
        Console.Write(" ");
    }
    for(int j = 0; j < 2 * i - 1; j++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

以后能一并写出来的就一并写出来,不分开写,看来是我将简单的问题复杂化了。

4. 输入一个正整数n,输出n层的菱形。

样例输入4

样例输出

   *
  ***
 *****
*******
 *****
  ***
   *

自己写的:

int n= Convert.ToInt32(Console.ReadLine());
for(int i = 0; i<= n; i++)

    for(int j = 0; j < n - i; j++)
    {
        Console.Write(" ");
    }
    for(int j =0 ; j < 2*i-1; j++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}
for(int i = n -1; i>0; i--)
{
    for(int j = i; j < n ; j++)
    {
        Console.Write(" ");
    }
    for(int j = 0; j < i * 2 - 1; j++)
    {
        Console.Write("*");
    }
    Console.WriteLine();
}

[展开全文]