C# —— 系统学习(控制结构)

下面时所有控制结构的实例与解析

条件分支结构 - if-else

cs 复制代码
int score = 85;
if (score >= 90)
{
    Console.WriteLine("优秀");
else if (score >= 80)
{
    Console.WriteLine("良好");
}
else
{
    Console.WriteLine("合格");
}

这段代码使用的是if-else条件语句链。它首先检查变量score是否大于等于90,如果是,则输出"优秀"。如果不是,则继续检查下一个条件(即score是否大于等于80),如果是,则输出"良好";如果score既不大于等于90也不大于等于80,则执行else后的语句块,输出"合格"。

switch-case

cs 复制代码
char gradeChar = 'B';
switch (gradeChar)
{
   case 'A':
        Console.WriteLine("优秀");
        break;
   case 'B':
       Console.WriteLine("良好");
        break;
    case 'C':
        Console.WriteLine("中等");
        break;
    default:
        Console.WriteLine("未知等级");
        break;
}

此段代码使用switch-case结构来根据变量gradeChar的值执行不同的代码块。当gradeChar等于'A'时,输出"优秀",接着遇到break语句结束当前case并跳出switch。同样,如果gradeChar等于'B'则输出"良好",等于'C'则输出"中等"。default语句用于匹配所有未列出的情况,此处输出"未知等级"。

循环结构 - for

cs 复制代码
for (int i = 1; i <= 10; i++) // 输出1到10
{
    Console.Write(i + " ");
}

这是一个for循环,初始化部分设置了变量i为1,条件部分检查i是否小于或等于10,每次循环结束后递增i的值。循环体内的代码会在满足条件的情况下重复执行,直到i不再小于或等于10为止。此循环会依次打印出1到10之间的整数,并在每个数字之间加上空格。

while循环

cs 复制代码
int counter = 0;
while (counter < 5)
{
    Console.WriteLine(counter);
    counter++;
}

这是一个while循环,只要条件counter < 5成立,就会一直执行循环体内的代码。初始时,counter被赋值为0,每次循环内部都会打印counter的当前值,并将其加1。因此,此循环将打印出0到4这五个数字,每次打印完都会更新counter的值。

do-while循环

cs 复制代码
int j = 0;
do
{
    Console.WriteLine(j);
    j++;
} while (j < 5); // 至少会执行一次循环体

do-while循环与while循环类似,但是它确保至少执行一次循环体,不管初始条件是否满足。在这里,先执行循环体,然后检查条件j < 5。所以无论初始时j是多少,都会首先打印j并增加它的值,之后再检查条件。同样,这个循环也会打印出0到4这五个数字。

跳转语句 - continue 和 break

cs 复制代码
for (int k = 1; k <= 10; k++)
{
   if (k == 5)
   {
        continue; // 当k等于5时,跳过本次循环体剩余部分,进入下一次循环
    }
    else if (k == 8)
    {
        break; // 当k等于8时,退出整个循环
    }
    Console.WriteLine(k);
}

在这段代码中,嵌套在一个for循环内有if-else条件语句。当变量k等于5时,continue语句被执行,这会导致程序立即跳过当前循环迭代的剩余部分,直接开始下一次迭代。而当k等于8时,break语句被执行,此时整个包含break的循环(即for循环)会被立即终止,不再执行后续的任何循环迭代。在没有遇到continue或break时,循环会正常打印出k的值。

相关推荐
传奇开心果编程3 分钟前
【Go入门练中学】第1课:从零开始
后端·学习·golang
我是苏苏7 分钟前
Agent 开发实战 :C#实现语义检索!向量数据库Qdrant的下载安装及调试步骤
c#·ai编程
峥嵘life19 分钟前
2026免费的 opencode 使用分享:Windows端 + 服务器CLI 实战总结
android·大数据·开发语言
纪念 22926 分钟前
C++类和对象(二)
开发语言·c++
泡海椒34 分钟前
Java 后端最优 PDF 导出方案:jquick-pdf 项目引入与快速测试
java·开发语言·pdf
Evand J35 分钟前
【MATLAB例程】二维Astar路径规划与AOA-TDOA定位仿真。完整代码,附下载链接。包运行成功,带中文注释
开发语言·matlab·路径规划·代码·定位·融合定位
李永奉37 分钟前
中科蓝讯SDK开发-耳机项目功耗问题排查教程
c语言·开发语言·嵌入式硬件·物联网·智能手机
光泽雨1 小时前
IEnumerable<T> 详细讲解
c#·c
linx2951 小时前
第七章 · 标准库容器、算法与 ranges
c语言·开发语言·数据结构·c++·算法
每天题库1 小时前
塔式起重机安装拆卸工题库:安拆考点+模拟题+错题解析
学习·安全·考试·题库·考证