第2讲 C#程序编程基础(3)

2019-04-02 08:57

if (a == b) {

//使用比较运算符 //输出比较相等信息

Console.WriteLine(\相等\ } else {

Console.WriteLine(\不相等\ }

//输出比较不相等信息

关系运算符如“>”,“<”,“>=”,“<=”等同样是比较两个对象并返回布尔值。

技巧:在使用判断的时候,可以直接使用表达式,只要表达式的返回值是布尔型的即可,同样也可以使用类型转换Convert.ToBoolean方法转换。

初学者很容易错误的使用关系运算符中的“==”号,因为初学者通常会将等于运算符编写为“=”号,示例代码如下所示。

if (a = b)

//使用布尔值布尔值

在这里,“=”号不等于“==”号,“=”号的意义是给一个变量赋值,而“==”号是比较两个变量的值是否相等,如果写成上述代码,虽然编译器不会报错,但是其运行过程就不是开发人员想象的流程。

5.逻辑运算符

逻辑运算符和布尔类型组成逻辑表达式。NOT运算符“!”使用单个操作数,用于转换布尔值,即取非,示例代码如下所示。

bool myBool = true;

//创建布尔变量 //使用逻辑运算符

bool notTrue = !myBool; 则返回false,示例代码如下所示。

bool myBool = true;

C#使用AND运算符“&&”。该运算符使用两个操作数做与运算,当有一个操作数的布尔值为false时,

//创建布尔变量 //使用逻辑运算符取反 //使用逻辑运算符计算

bool notTrue = !myBool;

bool result = myBool && notTrue;

同样,C#中也使用“||”运算符来执行OR运算,当有一个操作数的布尔值为true时,则返回true。

7.赋值运算符

C#提供了几种类型的赋值运算符,最常见的就是“=”运算符。C#还提供了组合运算符,如“+=”、“-=”、“*=”等。“=”运算符通常用来赋值,示例代码如下。

int a,b,c;

//声明三个整型变量 //使用赋值运算符

a = b = c = 1;

上述代码声明并初始化3个整型变量a、b、c并初始化值这些变量的值为1。加法赋值运算符“+=”将加法和赋值操作组合起来,先把第一个数值的值加上第二个数值的值再存放到第一个数值的,示例代码如下所示。

a += 1;

//进行自加运算

上述代码会将变量a的值加上1并再次赋值回a,上述代码实现的功能和以下代码等效。 a = a + 1; 9.2 运算符的优先级

开发人员需要经常创建表达式来执行应用程序的计算,简单的有加减法,复杂的有矩阵、数据结构等,在创建表达式时,往往需要一个或多个运算符。在多个运算符之间的运算操作时,编译器会按照运算符的优先级来控制表达式的运算顺序,然后再计算求值。例如在生活中也常常遇到这样的计算,如1+2*3。如果在程序开发中,编译器优先运算“+”运算符并进行计算就会造成错误的结果。

1.运算顺序

表达式中常用的运算符的运算顺序如表2-7所示。 表2-7 运算符优先级

运算符类型 算术运算符 关系运算符 逻辑运算符 条件运算符 赋值运算符 运算符 *,/,% <,>,<=,>=,is,as &,^,| &&,||,? =,+=,-=,*=,/=,<<=,>>=,&=,^=,|= //不使用+=运算符

10、 使用条件语句

程序开发中,开发人员经常遇到选择性的问题,如用户是否注册。如果用户已经注册则允许用户登陆,否则就跳转到注册页面。这个时候,就需要在程序中使用条件语句。if是最常用的条件语句,同时,if还包括if、if else、if else if等语句用于执行复杂的条件选择。 10.1 if语句的使用方法

if语句用于判断条件并按照相应的条件执行不同的代码块,if语句包括多种呈现形式,这些形式分别是if、if else、if else if。

1.声明if语句

if语句的语法如下所示。 if(布尔值) 程序语句

当布尔值为true,则会执行程序语句,当布尔值为false时,程序会跳过执行的语句执行,示例代码如下所示。

if (true) {

console.writeline(\ }

上述代码首先会判断if语句的条件,因为if语句的条件为true,所以if语句会执行大括号内的代码,程序运行会输出字符串true,如果将if内的条件改为false,那么程序将不会执行大括号内的代码,从而不会输出字符串true。

2.声明if else语句

if else语句的语法如下所示。

if(布尔值) 程序语句1 else 程序语句2

同样,当布尔值为true,则程序执行程序语句1,但当布尔值为false时,程序则执行程序语句2,示例代码如下所示。

if (true) {

console.writeline(\ } else {

console.writeline(\ }

上述代码中if语句的条件为true,所以if语句会执行第一个大括号中间的代码,而如果将true改为false,则if语句会执行第二个大括号中的代码。

3.声明if else if语句

当需要进行多个条件判断是,可以编写if else if语句执行更多条件操作,示例代码如下所示。 if (month == \ {

console.writeline(\ }

else if (month == \ {

console.writeline(\ }

else if (month == \ {

console.writeline(\

//输出spring

//判断month是否等于3

//输出summer

//判断month是否等于7

//输出winter

//判断month是否等于12

//当条件为假时执行语句

//如果条件不成立则执行

//当条件为真时执行语句

//使用if语句判断条件

//为true的代码块

//使用if语句

} else {

console.writeline(\ }

上述代码会判断相应的月份,如果月份等于12,就会执行相应的大括号中的代码,否则会继续进行判断,如果判断该月份即不是3月也不是7月,说明所有的条件都不复合,则会执行最后一段大括号中的代码。

10.2 switch选择语句的使用

switch语句根据某个传递的参数的值来选择执行的代码。在if语句中,if语句只能测试单个条件,如果需要测试多个条件,则需要书写冗长的代码。而switch语句能有效的避免冗长的代码并能测试多个条件。

1.声明switch选择语句 Switch语句的语法如下所示。 switch (参数的值) {

case 参数的对应值1: 操作1; break; case 参数的对应值2: 操作2; break; case 参数的对应值3: 操作3; break; }

从上述语法格式中可以看出switch的语法格式。在switch表达式之后跟一连串case标记相应的switch块。当参数的值为某个case对应的值的时候,switch语句就会执行对应的case的值后的操作,并以break结尾跳出switch语句。若没有对应的参数时,可以定义default条件,执行默认代码,示例代码如下所示。

int x; switch (x) {

case 0: Console.WriteLine(\ case 1: Console.WriteLine(\ case 2: Console.WriteLine(\ }

在上述代码中,当x等于0的时候,就会执行case 0的操作,就执行了Console.WriteLine(\。如果x等于1,语句就会执行case 1的操作。switch不仅能够通过数字进行判断,还能够通过字符进行判断。

2.使用break跳出语句

从上述代码中可以看出,每一个操作后面都使用了一个break语句。在C/C++中,程序员可以被允许不写break而贯穿整个switch语句,但是在C#中不以break结尾是错误的,并且编译器不会通过。因为C#的switch语句不支持贯穿操作,因为C#中是希望避免在应用程序的开发中出现这样的错误。

//x=0时执行 //x=1时执行 //x=2时执行

//switch语句

//输出默认情况

//当都不成立时执行

default:Console.WriteLine(“这是默认情况”);break;

注意:在C#中,可以使用goto语句模拟,继续执行下一个case或default。尽管在程序中可以这样做,但是会降低代码的可读性,所以不推荐使用goto语句。

注意:在switch语句中,default语句并不是必须的,但是编写default是可以为条件设置默认语句。

11、 使用循环语句

程序开发中,经常需要对某个代码块执行循环,使编译器能够重复执行某个代码块来完成计算。循环能够减少代码量,避免重复输入相同的代码行,也能够提高应用程序的可读性。常见的循环语句有for、while、do、for each。 11.1 for循环语句

for循环一般用于已知重复执行次数的循环,是程序开发中常用的循环条件之一,当for循环表达式中的条件为true时,就会一直循环代码块。因为循环的次数是在执行循环语句之前计算的,所以for循环又称作预测式循环。当表达式中的条件为false时,for循环会结束循环并跳出。for循环语法格式如下所示。

for(初始化表达式,条件表达式,迭代表达式) 循环语句

for循环的优点就是for循环的条件都位于同一位置,同样,循环的条件可以使用复杂的布尔表达式表示。for循环表达式包含三个部分,即初始化表达式、条件表达式和迭代表达式。当for循环执行时,将按照以下顺序执行。

? 在for循环开始时,首先运行初始化表达式。 ? 初始化表达式初始化后,则判断表达式条件。 ? 若表达式条件成立,则执行循环语句。 ? 循环语句执行完毕后,迭代表达式执行。

? 迭代表达式执行完毕后,再判断表达式条件并循环。

开发人员能够通过编写for循环语句进行代码块的重复,示例代码如下所示。 for (int i = 0; i < 100; i++) {

Console.WriteLine(i); }

技巧:for循环即可做增量操作也可以做减量操作,如可以写为for(int i=10;i>0;i--),说明for循环的结构非常灵活,同样for循环的条件,迭代表达式也不仅仅局限与此。 11.2 while循环语句

学生看项目指导书自学 11.3 foreach循环语句

学生看项目指导书自学

//输出i变量的值

//循环100次

12、 异常处理语句try-catch-finally

C#为处理程序执行期间可能出现的异常情况提供内置支持,这些异常由正常控制流之外的代码处理。常用的异常语句包括throw,try,catch等。try-catch-final语句能够使应用程序更加健壮。try-finally语句依旧会抛出异常,而try-catch-finally语句能够捕获异常并执行finally语句中的控制语句,try-catch-finally语句结构和很灵活,示例代码如下所示。

int x = 1; int y = 0; try {

x = x / y; }

catch (Exception ee) {

Console.WriteLine(\除数不能为空,具体错误信息如下所示\ Console.WriteLine(ee.ToString()); } finally {

Console.WriteLine(\系统已自动停止\ }

上述代码试图用一个整型变量除以一个值为0的整型变量,当异常发生时,catch捕获并抛出异常,捕获异常后,finally语句也被执行。运行结果如图2-27所示。

图2-27 try-catch-finally语句运行示例

//继续执行程序

//继续执行程序块

//抛出异常 //输出异常信息

//捕获异常信息

//进行除法计算

//声明整型变量x //声明整型变量y //尝试处理代码块

13、 小结

本讲介绍了C#语言的基本知识,包括变量、变量规则、表达式、条件语句、循环语句以及异常处理,本章主要讲解了:

? 变量:介绍了变量的概念、变量的声明以及初始化。 ? 变量规则:介绍了变量的命名、规则。 ? 表达式:介绍了表达式的创建和使用方法。

? 条件语句:介绍了if、if else、if else if、switch等条件语句的使用方法。 ? 循环语句:介绍了for,while、do while、foreach等循环语句的使用方法。 ? 异常处理:介绍了异常以及try-catch-finally语句的使用方法。


第2讲 C#程序编程基础(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:分类成语大全

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: