C#进阶:用二重循环打印直角三角形

需积分: 9 1 下载量 166 浏览量 更新于2024-08-19 收藏 1.91MB PPT 举报
"二重循环进阶-c#热身训练" 在C#编程中,二重循环是一种常见的结构,它由两个嵌套的循环组成,用于处理需要多维度遍历的问题。在这个主题中,我们将深入探讨如何使用二重循环来打印特定的图形,例如直角三角形。 直角三角形的打印通常通过二重循环实现,外层循环控制行数,而内层循环则负责打印每行的星号(*)。在描述的示例3中,每行的星号数量与行数相等,这就意味着内层循环的迭代次数随着外层循环的递增而增加。例如,打印一个3行的直角三角形,外层循环会迭代3次,内层循环在第一轮迭代时打印1个星号,第二轮迭代时打印2个星号,第三轮迭代时打印3个星号。 ```csharp for (int i = 1; i <= 3; i++) // 外层循环控制行数 { for (int j = 1; j <= i; j++) // 内层循环打印星号 { Console.Write("* "); } Console.WriteLine(); // 换行 } ``` 这段代码将输出以下图案: ``` * * ``` 在描述中还提到了`switch`语句的使用,这是一个多分支选择结构。在C#中,每个`case`后面通常需要跟一个`break`语句,以防止执行完一个`case`后的代码块后继续执行下一个`case`。如果忘记添加`break`,程序会继续执行下一个匹配的`case`,直到遇到`break`或`switch`语句的结束。例如: ```csharp int num = 2; switch (num) { case 1: Console.WriteLine("这是第一个case"); break; case 2: Console.WriteLine("这是第二个case"); break; default: Console.WriteLine("这是default"); break; } ``` 当`num`等于2时,程序只会输出“这是第二个case”,因为`break`语句会终止`case 2`的执行。 在本章的学习中,你将接触到C#中的不同循环结构,包括`while`、`do...while`、`for`和新特性`foreach`。`foreach`循环主要用于遍历集合或数组,简化了迭代操作。例如,如果你想打印一个字符串中的每个字符,可以这样写: ```csharp string str = "Hello"; foreach (char c in str) { Console.WriteLine(c); } ``` 这将分别输出字符串中的每一个字符。 此外,本章的任务还包括计算竞赛平均分、模拟商场购物过程以及实现一维数组的冒泡排序,这些都是通过循环语句来实现的。学习这些内容将帮助你掌握C#中循环语句的使用,并了解如何调试简单C#程序。同时,还会涉及一维数组的运用,这对于理解数据结构和算法至关重要。通过二重循环实现冒泡排序,你将更深入地理解循环在解决复杂问题中的应用。