【C#视频】——循环

本文介绍使用C#语言实现控制台程序的各种流程控制结构,包括条件判断(if...else)、多分支选择(switch-case)、异常处理(try-catch)、循环结构(while、do-while、for)及跳转语句等。

顺序结构

if

Console.writeline("请输入跪键盘时间");
String strMin=console.readline();
Int min =console.ToInt32(strMin);
Bool result=min>60;
If(result)//条件或者是bool值
{
	Console.writeline("不用给键盘了");
}
Console.readkey();

if...else

Console.WriteLine("请输入年份");
String year=Convert.ToInt32(Console.ReadLine());
bool result=(year%400==0)||(year%4==0&&year%100!=0);
if (result)
{
	Console.WriteLine("闰年");
}
else
{
	Console.WriteLine("不是闰年");
}
Console.ReadKey();

if...else if...

            string str = "";
            Console.WriteLine("输入成绩");
            int score = Convert.ToInt32(Console.ReadLine());
            if (score>=90)
            {
                str="A";
            }
            else if(score>=80)
            {
                str="B";
            }
            else if(score>=70)
            {
                str="C";
            }
            else if(score>=60)
            {
                str="D";
            }
            else
            {
                str="E";
            }

            Console.WriteLine(str);
            Console.ReadKey();

switch-case

是多分支结构

switch (num)
{
    case 1: per[i] = new Person(); break;
    case 2: per[i] = new Teacher(); break;
    case 3: per[i] = new Student(); break;
    case 4: per[i] = new ShuaiGuo(); break;
    case 5: per[i] = new MeiLv(); break;
    case 6: per[i] = new YeShou(); break;
}

try-carch

异常处理

            try
            {
                int num = Convert.ToInt32(Console.ReadLine());
            }
            catch (Exception ex)
            {
                throw;//专门扔出来异常
                Console.WriteLine(ex.Message);
            }
            //无论是否出异常都走这里
            finally
            {
                Console.WriteLine("杨洋好帅");
            }
            Console.ReadKey();

循环结构

while循环

先判断,然后再执行循环体

循环可以一次都不执行

            //2006年培养学员80000人,每年增长25%,请问按此增长速度,
            //到哪一年培训学员人数将达到20万人?

            double student = 80000;
            int year = 2006;
            while (student<=200000)
            {
                student *= 1.25;
                year++;
            }
            Console.WriteLine("{0}年是{1}人",year,student);
            Console.ReadKey();

do-while循环

先执行一次循环,然后再判断条件是否成立

循环至少会执行一次

String name ="";
String pwd="";
do
{
Console.WriteLine("请输入账号");
name=Console.ReadLine();
Console.WriteLine("请输入密码");
pwd=Console.ReadLine();
}while (name!="admin"||pwd!="8888");
Console.WriteLine("程序结束");
Console.ReadKey();

for循环

//求1-100间的所以偶数和
int sum=0;
for(int i=0; I <= 100; i++)
{
	if (i%2==0)
	{
	sum += I;
	}
}
Console.WrteLine("总和为{0}",sum);
Console.ReadKey();

foreach

提供了遍历数组的简单方式

foreach (array_expression as value)
       statement


跳转语句

break

用于循环中,退出当前循环

int i=0;
while(true)
{
    if(i==5)
    {
        Console.WriteLine("小羊很帅");
        break;
     }
     i++;
}
Console.WriteLine("系统识别此话是真的");
Console.ReadKey();

continue

int i=1;
int sum=0;
while (i <= 100)
{
     if (i % 7 == 0)
     {
         i++;
         continue;
     }
     sum += i;
     i++;           
}
Console.WriteLine("总和为{0}",sum);
Console.ReadKey();

STM32电机库无感代码注释无传感器版本龙贝格观测三电阻双AD采样前馈控制弱磁控制斜坡启动内容概要:本文档为一份关于STM32电机控制的无传感器版本代码注释资源,聚焦于龙贝格观测器在永磁同步电机(PMSM)无感控制中的应用。内容涵盖三电阻双通道AD采样技术、前馈控制、弱磁控制及斜坡启动等关键控制策略的实现方法,旨在通过详细的代码解析帮助开发者深入理解基于STM32平台的高性能电机控制算法设计与工程实现。文档适用于从事电机控制开发的技术人员,重点解析了无位置传感器控制下的转子初始定位、速度估算与系统稳定性优化等问题。; 适合人群:具备一定嵌入式开发基础,熟悉STM32平台及电机控制原理的工程师或研究人员,尤其适合从事无感FOC开发的中高级技术人员。; 使用场景及目标:①掌握龙贝格观测器在PMSM无感控制中的建模与实现;②理解三电阻采样与双AD同步采集的硬件匹配与软件处理机制;③实现前馈补偿提升动态响应、弱磁扩速控制策略以及平稳斜坡启动过程;④为实际项目中调试和优化无感FOC系统提供代码参考和技术支持; 阅读建议:建议结合STM32电机控制硬件平台进行代码对照阅读与实验验证,重点关注观测器设计、电流采样校准、PI参数整定及各控制模块之间的协同逻辑,建议配合示波器进行信号观测以加深对控制时序与性能表现的理解。
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值