当前位置: 首页 > article >正文

初识C#(二)- 流程控制

我希望能把自己的命运掌握在自己的手里《流程控制》

文章目录

  • 前言
  • 一、分支语句
    • 1.1 如此如此这般这般的if语句
    • 1.2 一次满足多个愿望的switch语句
  • 二、循环语句
    • 2.1 漫无目的没因没果的while循环
    • 2.2 会灵活设定目标的for循环
    • 2.3 先动起来再想其他事情的do while循环
  • 总结


前言

本篇笔记重点描述C#中如何使用语句进行流程控制。


一、分支语句

1.1 如此如此这般这般的if语句

这是一个很符合现实逻辑的语句,就像我们小时候经常被家里人说,如果你做好了某件指定的事情就给你某些奖励否则就打你两巴掌。

internal class Program
{
    private static void Main(string[] args)
    {
        //年龄是否达标
        int age = Convert.ToInt32(Console.ReadLine());

        //if语句
        if (age <= 16)
        {
            //当满足条件的时候执行
            Console.WriteLine("可以进入");
        }
        else
        {
            //否则运行else(其他)
            Console.WriteLine("年龄太大,不能进入");
        }
        //if() {}           if(){}else{}

        Console.WriteLine("程序结束");
        	}
        }

1.2 一次满足多个愿望的switch语句

相信不少人都听过健达奇趣蛋的广告,一次实现多个愿望,switch语句就是轻易实现这样的一种方式,它可以一次实现你多种愿望,当然你如果只想要其中一种愿望的话,可以没问题的。

internal class Program
{
    private static void Main(string[] args)
    {
        //int number = Convert.ToInt32(Console.ReadLine());

        //switch (number) { 
        //    case 1:
        //        Console.WriteLine("矿泉水");
        //        break;
        //    case 2:
        //        Console.WriteLine("红茶");
        //        break;
        //    case 3:
        //        Console.WriteLine("绿茶");
        //        break;
        //    case 4:
        //        Console.WriteLine("雪碧");
        //        break;
        //    case 5:
        //        Console.WriteLine("可口可乐");
        //        break;
        //    case 6:
        //        Console.WriteLine("脉动");
        //        break;
        //    default:
        //        Console.WriteLine("没有你要购买的商品");
        //        break;

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

            switch (weekNum)
                {
                case 1:
                case 2:
                Console.WriteLine("arduino");
                        break;
                case 3:
                case 4:
                case 5:
                Console.WriteLine("C++");
                        break;
                case 6:
                case 7:
                Console.WriteLine("Scratch");
                        break;
                default:
                        Console.WriteLine("不在范围内");
                        break;
                }
        //输入1或2输出arduino然后跳出循环
        //输入3,4,5其中一个输出C++然后跳出循环
        //输入6或7输出Scratch然后跳出循环
        //如果输出其他东西则输出“不在范围内”然后跳出循环
    }
}

二、循环语句

2.1 漫无目的没因没果的while循环

我们人生中总有那么一段迷茫的时候。在这个过程中我们不断去重复一样东西,不抱着任何期待,不抱着任何目的,就会陷入一个循环,而这种循环就是没有结果的。

但当我们抱着一个期待,抱着一个目的去进入一个循环的时候,这个循环就是有意义且能得到结果的循环。

internal class Program
{
    private static void Main(string[] args)
    {
        int i = 1;
        while (i < 11)
        {
            Console.WriteLine(i);
            i++;//增量表达式
        }
        //当while不满足条件时,跳出循环,执行后面的代码
        }
    }

2.2 会灵活设定目标的for循环

在我们想要实现一个目标的时候,可能需要进行一些反复无常的循环,但有时候我们想给这个循环设定一个起点,目标,实现方法的时候,就需要用到for循环了。

internal class Program
{
    private static void Main(string[] args)
    {
        for (int i = 0; i < 10 ; i++) {
            //for循环中,第一个为初始化表达式,第二个为判断表达式,第三个为增量表达式
            Console.WriteLine(i);
        }
        for(int i = 1; i < 11; i++)
        {
            Console.WriteLine(i);
        }

        //int n = Convert.ToInt32(Console.ReadLine());
        //int m = Convert.ToInt32(Console.ReadLine());
        //string ji = "";
        //string ou = "";
        //for (int i = n; i < m+1; i++) {
        //    if (i % 2 == 1)
        //    {
        //        ji += i + " "; 
        //    }
        //    else
        //    {
        //        ou += i + " ";
        //    }
        //}
        //Console.WriteLine(ji);
        //Console.WriteLine(ou);

        //for循环的 初始化 条件 增量 都是可选的,可有可⽆,根据需要。⼀般都有
        int i = 1;
        //break
        //for ( ;i<=10; ) {
        //    Console.WriteLine(i);
        //    i++;
        //}
        for (; ; )
        {
            Console.WriteLine(i);
            i++;
            if (i > 10)
            {
                break;//跳出离他最近的循环,就是for循环
            }
        }

    }
}

2.3 先动起来再想其他事情的do while循环

有听过一句话吗,来一场说走就走的旅行,这就是先动起来再想后续计划的经典例子。这种行为,无论计划如何糟糕它都至少执行了一次。至于执行后还会不会继续嘛,那就另当别论了哈哈哈。

internal class Program
{
    private static void Main(string[] args)
    {
        int i = 1;
        //do
        //{
        //    Console.WriteLine(i);
        //    i++;
        //}while (i < 11);
        //先执行再判断

        while (i < 0)
        {
            Console.WriteLine("i<0");
        }
        do { 
            Console.WriteLine("i<0");
        }while (i < 0); 

    }
}

总结

分支语句和循环语句对于各种语言来说都是一种流程控制的方式,这是需要学好且做大量练习掌握的知识点


http://www.kler.cn/news/324544.html

相关文章:

  • Apache APISIX学习(2):安装Grafana、prometheus
  • LeeCode打卡第三十一天
  • 基于springboot+vue学生宿舍管理系统设计与实现
  • 【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL68
  • [240929] 12 款最佳免费开源隐写工具 | Llama 3.2: 开源、可定制模型,革新边缘人工智能和视觉体验
  • Windows 10 on ARM, version 22H2 (updated Sep 2024) ARM64 AArch64 中文版、英文版下载
  • Flask 实现文件下载
  • Vue3 项目环境变量配置(Vite)
  • 2024年7月大众点评全国小吃快餐前百名城市分析
  • U盘打开提示要格式化:深度解析、恢复策略与预防之道
  • CSS列表
  • 每天学习一个技术栈 ——【Celery】篇(2)
  • FTP 服务器 linux安装
  • 面试速通宝典——5
  • 解锁免费数据恢复工具的潜力,找回珍贵数据记忆
  • android设计模式的建造者模式,请举例
  • RabbitMQ的各类工作模式介绍
  • SOCKS5代理和HTTP代理哪个快?深度解析两者的速度差异
  • 支持云边协同的「物联网平台+边缘计算底座」
  • tcpdump捕获指定端口的网络流量并实时输出
  • OpenCV_自定义线性滤波(filter2D)应用详解
  • 护眼灯行业分水岭渐显,书客革命性创新成为企业扩容市场的第一动力
  • qt6 使用QPSQL
  • 【k8s】:DevOps 模式详解
  • 物联网系统中模拟温度传感器测温方案
  • 设计模式之享元(Flyweight)模式
  • 设计模式小记:构造器
  • QT九月28日
  • 阿里云函数计算 x NVIDIA 加速企业 AI 应用落地
  • 量化金融中的 AI 革命:LLMs 如何重新定义交易策略