篆体字网 > 知识库

c 教程

来源:篆体字网 2023-12-26 08:52:13 作者:篆字君

前置博客为:C#(Csharp)基础教程(上)(菜鸟教程笔记)
内容包括:C#概述及开发环境简介、C# 程序结构、C# 基本语法、C# 数据类型、C# 类型转换、C# 变量、C# 常量、C# 运算符。

目录

1. C# 判断1.1 if 语句1.2 if...else语句1.2.1 if...else if...else 语句1.3 嵌套if语句1.4 switch语句1.5 嵌套 switch 语句1.6 `?:`运算符2. C# 循环2.1 循环类型2.1.1 while 循环2.1.2 for/foreach 循环2.1.3 do...while 循环2.1.4 嵌套循环2.2 循环控制语句2.2.1 break 语句2.2.2 continue 语句2.3 无限循环3. C# 封装4. C# 方法5. C# 可空类型(Nullable)6. C# 数组(Array)7. C# 字符串(String)8. C# 结构体(Struct)9. C# 枚举(Enum)

1. C# 判断

判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)。

下面是大多数编程语言中典型的判断结构的一般形式:

1.1 if 语句

一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。

C# 中 if 语句的语法:

如果布尔表达式为 true,则 if 语句内的代码块将被执行。如果布尔表达式为 false,则 if 语句结束后的第一组代码(闭括号后)将被执行。

流程图如下:
if语句实例:


1.2 if…else语句

一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。

C# 中 if…else 语句的语法:

如果布尔表达式为 true,则执行 if 块内的代码。如果布尔表达式为 false,则执行 else 块内的代码。

流程图为:
if…else语句实例:


1.2.1 if…else if…else 语句

一个 if 语句后可跟一个可选的 else if…else 语句,这可用于测试多种条件。
当使用 if…else if…else 语句时,以下几点需要注意:

一个 if 后可跟零个或一个 else,它必须在任何一个 else if 之后。一个 if 后可跟零个或多个 else if,它们必须在 else 之前。一旦某个 else if 匹配成功,其他的 else if 或 else 将不会被测试。

C# 中的 if…else if…else 语句的语法:

if…else if…else 语句实例:


1.3 嵌套if语句

在 C# 中,嵌套 if-else 语句是合法的,这意味着您可以在一个 if 或 else if 语句内使用另一个 if 或 else if 语句。

C# 中 嵌套 if 语句的语法:

嵌套 if 语句的实例:


1.4 switch语句

一个 switch 语句允许测试一个变量等于多个值时的情况。每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查。

C# 中 switch 语句的语法:

switch 语句必须遵循下面的规则:

switch 语句中的expression必须是一个整型或枚举类型,或者是一个class 类型,其中 class 有一个单一的转换函数将其转换为整型或枚举类型。在一个 switch 中可以有任意数量的 case 语句。每个 case 后跟一个要比较的值和一个冒号。case 的constant-expression必须与 switch 中的变量具有相同的数据类型,且必须是一个常量。当被测试的变量等于 case 中的常量时,case 后跟的语句将被执行,直到遇到 break 语句为止。当遇到 break 语句时,switch 终止,控制流将跳转到 switch 语句后的下一行。不是每一个 case 都需要包含 break。如果 case 语句为空,则可以不包含 break,控制流将会 继续 后续的 case,直到遇到 break 为止。C# 不允许从一个开关部分继续执行到下一个开关部分。如果 case 语句中有处理语句,则必须包含 break 或其他跳转语句。一个 switch 语句可以有一个可选的 default case,出现在 switch 的结尾。default case 可用于在上面所有 case 都不为真时执行一个任务。default case 中的 break 语句不是必需的。C# 不支持从一个 case 标签显式贯穿到另一个 case 标签。如果要使 C# 支持从一个 case 标签显式贯穿到另一个 case 标签,可以使用 goto 一个 switch-case 或 goto default。

switch语句实例:


1.5 嵌套 switch 语句

您可以把一个 switch 作为一个外部 switch 的语句序列的一部分,即可以在一个 switch 语句内使用另一个 switch 语句。即使内部和外部 switch 的 case 常量包含共同的值,也没有矛盾。

C# 中 嵌套 switch 语句的语法:

嵌套switch语句实例:


1.6 运算符

条件运算符 可以用来替代语句。

它的一般形式如下:

其中,Exp1、Exp2 和 Exp3 是表达式。请注意,冒号的使用和位置。

表达式的值是由 Exp1 决定的。如果 Exp1 为真,则计算 Exp2 的值,结果即为整个 ? 表达式的值。如果 Exp1 为假,则计算 Exp3 的值,结果即为整个 ? 表达式的值。

2. C# 循环

有的时候,可能需要多次执行同一块代码。一般情况下,语句是顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。
编程语言提供了允许更为复杂的执行路径的多种控制结构。
循环语句允许我们多次执行一个语句或语句组,下面是大多数编程语言中循环语句的一般形式:

2.1 循环类型

2.1.1 while 循环

只要给定的条件为真,C# 中的 while 循环语句会重复执行一个目标语句。

C# 中 while 循环的语法:

在这里,statement(s) 可以是一个单独的语句,也可以是几个语句组成的代码块。condition 可以是任意的表达式,当为任意非零值时都为真。当条件为真时执行循环。

当条件为假时,程序流将继续执行紧接着循环的下一条语句。

流程图:
在这里,while 循环的关键点是循环可能一次都不会执行。当条件被测试且结果为假时,会跳过循环主体,直接执行紧接着 while 循环的下一条语句。

while循环实例:


2.1.2 for/foreach 循环

一个 for 循环是一个允许您编写一个执行特定次数的循环的重复控制结构。

C# 中 for 循环的语法:

下面是 for 循环的控制流:

init 会首先被执行,且只会执行一次。这一步允许您声明并初始化任何循环控制变量。您也可以不在这里写任何语句,只要有一个分号出现即可。接下来,会判断 condition。如果为真,则执行循环主体。如果为假,则不执行循环主体,且控制流会跳转到紧接着 for 循环的下一条语句。在执行完 for 循环主体后,控制流会跳回上面的 increment 语句。该语句允许您更新循环控制变量。该语句可以留空,只要在条件后有一个分号出现即可。条件再次被判断。如果为真,则执行循环,这个过程会不断重复(循环主体,然后增加步值,再然后重新判断条件)。在条件变为假时,for 循环终止。

流程图为:
for循环实例:

C# 也支持 foreach 循环,使用foreach可以迭代数组或者一个集合对象。

foreach循环实例如下:

以上实例有三个部分:

通过 foreach 循环输出整型数组中的元素。通过 for 循环输出整型数组中的元素。foreach 循环设置数组元素的计算器。

2.1.3 do…while 循环

不像 for 和 while 循环,它们是在循环头部测试循环条件。do…while 循环是在循环的尾部检查它的条件。

do…while 循环与 while 循环类似,但是 do…while 循环会确保至少执行一次循环。

C# 中 do…while 循环的语法:

请注意,条件表达式出现在循环的尾部,所以循环中的 statement(s) 会在条件被测试之前至少执行一次。

如果条件为真,控制流会跳转回上面的 do,然后重新执行循环中的 statement(s)。这个过程会不断重复,直到给定条件变为假为止。

流程图为:

do…while循环实例:


2.1.4 嵌套循环

C# 允许在一个循环内使用另一个循环。

C# 中 嵌套 for 循环 语句的语法:

C# 中 嵌套 while 循环 语句的语法:

C# 中 嵌套 do…while 循环 语句的语法:

关于嵌套循环有一点值得注意,您可以在任何类型的循环内嵌套其他任何类型的循环。比如,一个 for 循环可以嵌套在一个 while 循环内,反之亦然。

嵌套循环实例:
下面的程序使用了一个嵌套的 for 循环来查找 2 到 100 中的质数:


2.2 循环控制语句

2.2.1 break 语句

C# 中 break 语句有以下两种用法:

当 break 语句出现在一个循环内时,循环会立即终止,且程序流将继续执行紧接着循环的下一条语句。它可用于终止 switch 语句中的一个 case。

如果您使用的是嵌套循环(即一个循环内嵌套另一个循环),break 语句会停止执行最内层的循环,然后开始执行该块之后的下一行代码。

C# 中 break 语句的语法:

流程图为
break实例:


2.2.2 continue 语句

C# 中的 continue 语句有点像 break 语句。但它不是强迫终止,continue 会跳过当前循环中的代码,强迫开始下一次循环。

对于 for 循环,continue 语句会导致执行条件测试和循环增量部分。对于 while 和 do…while 循环,continue 语句会导致程序控制回到条件测试上。

C# 中 continue 语句的语法:

流程图为
continue实例


2.3 无限循环

如果条件永远不为假,则循环将变成无限循环。for 循环在传统意义上可用于实现无限循环。由于构成循环的三个表达式中任何一个都不是必需的,您可以将某些条件表达式留空来构成一个无限循环。

实例

当条件表达式不存在时,它被假设为真。您也可以设置一个初始值和增量表达式,但是一般情况下,程序员偏向于使用 for( ; ; ) 结构来表示一个无限循环。

3. C# 封装

4. C# 方法

5. C# 可空类型(Nullable)

6. C# 数组(Array)

7. C# 字符串(String)

8. C# 结构体(Struct)

9. C# 枚举(Enum)

上一篇:nba直播热火vs马刺

下一篇:mp3软件

相关阅读