C#打印三角形

这篇博客详细介绍了如何使用C#编程语言打印不同类型的三角形,包括直角三角形、等腰三角形和空心等腰三角形。通过分析行数与打印符号之间的函数关系,利用循环结构实现图形输出。示例代码清晰易懂,适合初学者理解和练习。
摘要由CSDN通过智能技术生成

打印三角形
C#

以下是打印三角形的算法分析过程和代码

  • 例一 直角三角形
*
**
***
****
*****

行数 i      *数量 
1           1
2           2
3           3
4           4
5           5
...
i           i           

f(i) = i (i >= 1)
for (int i = 1; i <= 5; i++) 
{
    for (int j = 1; j <= i; j++) 
    {
        Console.Write("*");         // 注意这里需要用 Write(),不能用 WriteLine(),WriteLine() 会单独占一行。
    }
    Console.Write("\n");
}
  • 例二 等腰三角形
    *
   ***
  *****
 *******
*********

i 行数 ; j 打印空的个数 ; k 打印 * 的个数

i       j       k                   
1       4       1
2       3       3
3       2       5
4       1       7
5       0       9    

j 与 i 的函数关系       f(i) = 5 - j (i >= 1)

k 与 i 的函数关系       f(i) = 1 + (i - 1) * 2             k 列是一个方差为2的等差数量,求 f(i) 即求等差数列An
for (int i = 1; i <= 5; i++) 
{
    for (int j = 1; j <= 5 - i; j++) 
    {
        Console.Write(" ");         
    }
    for (int k = 1; k <= 1 + (i - 1) * 2; k++) 
    {
        Console.Write("*");         
    }
    Console.Write("\n");
}
  • 例三 空心的等腰三角形
    *
   * *
  *   *
 *     *
*       *

i 行数 ; j 打印空的个数 ; k 打印 * 的个数 ; n 打印 空的个数 ; m 打印 * 的个数

i       j       k       n       m          
1       4       1       0       0
2       3       1       0       1
3       2       1       3       1
4       1       1       5       1   
5       0       1       7       1

j 与 i 的函数关系       f(i) = 5 - j (i >= 1)

k 与 i 的函数关系       f(i) = 1

n 与 i 的函数关系       f(i) = 0                (0 < i < 3)
                           = 3 + (i - 3) * 2  ( i >= 3)

m 与 i 的函数关系       f(i) = 0   (i = 1)
                           = 1   (i > 1)
for (int i = 1; i <= 5; i++) 
{
    for (int j = 1; j <= 5 - i; j++) 
    {
        Console.Write(" ");         
    }

    Console.Write("*"); 

    for (int k = 1; k <= 3 + (i - 3) * 2; k++) 
    {
        Console.Write(" ");         
    }

    if (i != 1) 
    {
        Console.Write("*"); 
    }
    
    Console.Write("\n");
}

输出效果如下:
在这里插入图片描述
打印图形这类似的题目的思想就是这样,考虑清楚各个符号的数量和行数 i 之间的函数关系,循环打印即可得到。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Morris_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值