热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C#基础语法快速入门

本文详细介绍了C#中的基本选择结构(如if、if-else、if-else-if及嵌套if)、switch结构、数组与循环控制结构(包括while、do-while、for和foreach循环)以及跳转语句(break和continue)。此外,还简要探讨了二重循环的应用和冒泡排序算法。

选择结构:

在C#中,选择结构主要用于根据不同的条件执行不同的代码块。主要包括:

  • if结构:当指定条件为真时,执行相应的代码块。
  • if-else结构:当条件为真时执行一个代码块,否则执行另一个代码块。
  • if-else-if结构:允许多个条件分支,每个分支都有对应的执行代码。
  • 嵌套if结构:在一个if或else部分中嵌套另一个if结构,以处理更复杂的逻辑条件。

示例语法如下:

if (condition1) { if (condition2) { // 执行代码 } else { // 执行代码 } } else { // 执行代码 }

Switch结构:

Switch结构提供了一种多分支的选择方式,适用于已知的固定选项。其基本语法为:

switch (expression) { case constant1: statement1; break; case constant2: statement2; break; default: statementDefault; break; }

其中,expression 是要评估的表达式,constant 是与表达式匹配的常量值,statement 是当匹配成功时执行的代码块,default 是可选的,用于没有匹配任何case时执行的代码。

数组与循环:

数组是一种存储多个相同类型元素的数据结构。C#中声明数组的方式为:

dataType[] arrayName; // 或者 dataType arrayName[];

数组的Length属性可以获取数组的长度,即数组中元素的数量。

C#提供了多种循环结构来重复执行代码块,包括:

  • While循环:先检查条件,若条件为真则执行循环体。
  • Do-while循环:先执行循环体,后检查条件,因此至少执行一次。
  • For循环:适用于已知循环次数的情况。
  • Foreach循环:用于遍历数组或集合中的每个元素。

示例语法如下:

// For循环 for (int i = 0; i 

跳转语句:

跳转语句用于改变程序的正常执行流程,主要包括:

  • Break语句:用于立即退出当前的循环或switch结构。
  • Continue语句:用于跳过当前循环的剩余部分,并开始下一次循环迭代。

二重循环:

二重循环是指在一个循环内部嵌套另一个循环,通常用于处理二维数组或多维数据结构。其执行过程是外层循环每执行一次,内层循环完整执行一遍。

冒泡排序:

冒泡排序是一种简单的排序算法,通过重复遍历待排序的列表,比较相邻元素并根据需要交换它们的位置,直到列表完全有序。其核心思想是每次遍历都将最大的元素“冒泡”到列表的末尾。

冒泡排序速记口诀(升序):

  • N个数字来排队,两两相比小靠前。
  • 外层循环N-1次,内层循环N-1-i次。
  • 如果要降序排序,只需将比较条件中的大于号改为小于号。

本章总结:

本章介绍了C#中的一维数组声明和初始化方法,强调了C#与Java在数组声明上的细微差异。同时,讲解了C#中的四种循环结构及其应用场景,特别是foreach循环在遍历数组或集合中的优势。此外,讨论了如何使用二重循环实现复杂逻辑,以及如何利用跳转语句优化循环结构。最后,通过冒泡排序算法的介绍,展示了如何在实际编程中应用这些基础知识。


推荐阅读
  • Go 通过 Map/Filter/ForEach 等流式 API 高效处理数据
    go,通过,map,filter,foreach,等,流,式,ap ... [详细]
  • 深入探讨ASP.NET中的OAuth、JWT与OpenID Connect
    本文作为前文关于OAuth2.0和使用.NET实现OAuth身份验证的补充,详细阐述了OAuth与JWT及OpenID Connect之间的关系和差异,旨在提供更全面的理解。 ... [详细]
  • 深入理解希尔排序算法
    本文详细介绍了希尔排序的原理及其相对于传统插入排序的优势,并通过实例解析了希尔排序的具体实现过程,包括代码示例及性能分析。 ... [详细]
  • 本题探讨如何从一个包含正数与负数的整型数组中,找出具有最大和的连续子数组,并给出高效的解决方案。 ... [详细]
  • Java程序设计第五周学习总结与实践
    本次学习总结涵盖了本周在Java程序设计课程中的学习要点,包括代码阅读、抽象类的应用、接口的使用以及面向接口编程的概念。同时,还包括了具体的书面作业解析。 ... [详细]
  • 本文详细解析了muduo库中的Socket封装及字节序转换功能。主要涉及`Endian.h`和`SocketsOps.h`两个头文件,以及`Socket.h`和`InetAddress.h`类的实现。 ... [详细]
  • 详细的介绍针对graphiclayer的空间查询。首先,空间查询的方式:提供多种类型的空间查询,包括点周边、线周边、面内等多种方式;其次,图形绘制完成后状态的展示;再次 ... [详细]
  • 本教程将深入探讨C#编程语言中的条件控制结构,包括if语句和switch语句的使用方法。通过本课的学习,您将掌握如何利用这些控制结构来实现程序的条件分支逻辑。 ... [详细]
  • 按照频率降序打印数字 ... [详细]
  • 阿里飞猪旅行搜索技术的革新与实践
    本文由林睿(阿里飞猪)分享,经杜正海、Hoh编辑整理,并由DataFunTalk平台发布。文章探讨了旅行搜索技术从满足基本需求到集成高级功能的发展历程,特别是在阿里飞猪平台上的应用与创新。 ... [详细]
  • 本文基于《Linux命令行与Shell脚本编程大全》第三版的第十一章内容,探讨了如何构建基本的Shell脚本,包括命令组合、脚本创建、消息显示、变量使用、输入输出重定向、管道、数学运算及脚本退出等方面的知识。 ... [详细]
  • 深入理解KMP算法及其应用
    本文详细介绍了KMP算法的原理和实现方法,包括如何计算next数组以及如何利用next数组进行高效的字符串匹配。 ... [详细]
  • 题目链接:请点击这里。本题将图形视为波动,其中波峰被淹没时部分数减少,而波谷被淹没时部分数增加。因此,需要预先处理所有波峰和波谷的位置。特别地,图形的两端点需要特殊处理,可以通过设置边界条件来简化问题。 ... [详细]
  • 本文详细介绍了Java SE的基础知识,包括Java的基本数据类型、运算符、程序控制结构、数组以及面向对象编程的核心概念。同时,文章还涵盖了JDK的概念及其在Java开发中的应用。 ... [详细]
  • JS的类型和值
    1.类型ECMAScript语言中所有的值都有一个对应的语言类型。ECMAScript语言类型包括Undefined、Null、Boolean、String、Number和Obje ... [详细]
author-avatar
皇族灬柒诺彡_241
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有