CSharp程序流程控制.ppt
《CSharp程序流程控制.ppt》由会员分享,可在线阅读,更多相关《CSharp程序流程控制.ppt(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Visual C#程序设计基础程序设计基础XXXXXX大学计算机系基础教研室大学计算机系基础教研室第4章 C#C#程序流程控制程序流程控制4.1 顺序结构顺序结构4.2 选择结构选择结构4.3 循环结构循环结构小结和习题小结和习题4.1 顺序结构顺序结构赋值语句赋值语句1.赋值语句赋值语句由一个赋值运算符构成的赋值语句。赋值语句的格式为:由一个赋值运算符构成的赋值语句。赋值语句的格式为:变量变量=表达式表达式;2复合赋值语句与连续赋值语句复合赋值语句与连续赋值语句(1)复合赋值语句复合赋值语句(2)连续赋值语句连续赋值语句4.1 顺序结构顺序结构4.1.2输入输入语句语句通过计算机的外设把数据
2、送到计算机内存的过程称为通过计算机的外设把数据送到计算机内存的过程称为输入。输入。C#语言的输入语句常用的有两种形式:语言的输入语句常用的有两种形式:Console.Read();Console.ReadLine();输入可以是整型或字符串等,但布尔型不可以直接读入。输入可以是整型或字符串等,但布尔型不可以直接读入。例如:例如:stringstrInput=Console.ReadLine();Read语句和语句和ReadLine语句不同之处在于输入数据到各变量之后,语句不同之处在于输入数据到各变量之后,ReadLine自动换行,从下一行开始再输入数据。自动换行,从下一行开始再输入数据。4.1
3、 顺序结构顺序结构4.1.3输出输出语句语句输出是将内存中的数据送到外设的过程。输出是将内存中的数据送到外设的过程。C#语言的输出语句有语言的输出语句有两种形式:两种形式:Console.Write(输出项输出项);Console.WriteLine(输出项输出项);其中其中可以是常量、变量、表达式或字符串。可以是常量、变量、表达式或字符串。例如:例如:Console.Write(abcd);/输出输出”abcd”Console.WriteLine(abcd);/输出输出”abcd”并换行并换行Console.WriteLine(0;1;2,10,20,30);/输出输出“10;20;30”并
4、换行并换行Write和和WriteLine的区别:的区别:Write语句是输出项输出后,不换行,语句是输出项输出后,不换行,光标停留在最后一项后;光标停留在最后一项后;WriteLine语句按项输出后,自动语句按项输出后,自动换行,光标则停留在下一行的开始位置。换行,光标则停留在下一行的开始位置。4.1 顺序结构顺序结构4.1.4复合复合语句语句复合语句是由若干语句组成的序列,语句之间用分号复合语句是由若干语句组成的序列,语句之间用分号“;”隔开,隔开,并且以并且以括起来,作为一条语句。复合语句的一般形式:括起来,作为一条语句。复合语句的一般形式:语句语句1;语句语句2;语句语句n;4.1 顺
5、序结构顺序结构4.1.5应用实例应用实例【例例4-1】编写一个控】编写一个控制台应用程序,输制台应用程序,输入圆的半径值,求入圆的半径值,求圆的周长和面积,圆的周长和面积,结果如图结果如图4-1所示。所示。usingusing System;System;namespacenamespace P4_1 P4_1 classclass ProgramProgram staticstatic voidvoid Main(Main(stringstring args)args)constconst doubledouble PI=3.141;PI=3.141;doubledouble R,L,S;R
6、,L,S;ConsoleConsole.Write(.Write(请输入圆的半径值:请输入圆的半径值:););R=R=doubledouble.Parse(.Parse(ConsoleConsole.ReadLine();.ReadLine();L=2*PI*R;L=2*PI*R;S=PI*R*R;S=PI*R*R;ConsoleConsole.WriteLine(.WriteLine(圆的周长为:圆的周长为:00,L);L);ConsoleConsole.WriteLine(.WriteLine(圆的面积为:圆的面积为:00,S);S);Console Console.ReadLine();
7、.ReadLine();4.1 顺序结构顺序结构4.1.5应用实例应用实例(1)Parse方法方法Parse方法可以将特定格式的字符串转换为数值。使用格式为:方法可以将特定格式的字符串转换为数值。使用格式为:数值类型名称数值类型名称.Parse(字符串型表达式字符串型表达式)例如:例如:intx=int.Parse(123);(2)ToString方法方法ToString方法可将其他数据类型的变量值转换为字符串类型。使方法可将其他数据类型的变量值转换为字符串类型。使用格式为:用格式为:变量名称变量名称.ToString()例如:例如:intx=123;strings=x.ToString();
8、4.1 顺序结构顺序结构4.1.5应用实例应用实例【例例4-2】使用标签与文本框实现输入与输出。输入两个数,并实】使用标签与文本框实现输入与输出。输入两个数,并实现两数的算术运算:和、差、积、商,结果如图所示。现两数的算术运算:和、差、积、商,结果如图所示。4.2 选择结构选择结构if条件语句条件语句1.单分支单分支if语句语句单分支单分支if语句的格式为:语句的格式为:if(布尔条件表达式布尔条件表达式)内嵌语句序列内嵌语句序列1;说明:说明:若布尔表达式的为真时,程序执行内嵌语句序若布尔表达式的为真时,程序执行内嵌语句序列。如果内嵌语句序列中为多个执行语句,则要使列。如果内嵌语句序列中为多
9、个执行语句,则要使用花括号用花括号()组合为一个语句块。组合为一个语句块。4.2 选择结构选择结构if条件语句条件语句2.双双分支分支if语句语句双双分支分支if语句的格式为:语句的格式为:if(布尔条件表达式布尔条件表达式)内嵌语句序列内嵌语句序列1;else内嵌语句序列内嵌语句序列2;说明:说明:若布尔表达式的值为真时,程序执行内嵌语句序列若布尔表达式的值为真时,程序执行内嵌语句序列1,否则执,否则执行内嵌语句序列行内嵌语句序列2。if.else语句中,内嵌语句序列语句中,内嵌语句序列1和内嵌语句序列和内嵌语句序列2可以是简单可以是简单语句,也可以是复合语句。如果内嵌语句序列中为多个执行语
10、句,也可以是复合语句。如果内嵌语句序列中为多个执行语句,则要使用花括号语句,则要使用花括号()组合为一个语句块。组合为一个语句块。4.2 选择结构选择结构if条件语句条件语句3.多多分支分支if语句语句多多分支分支if语句的格式为:语句的格式为:if(表达式表达式1)内嵌语句序列内嵌语句序列1;elseif(表达式表达式2)内嵌语句序列内嵌语句序列2;elseif(表达式表达式3)elseif(表达式表达式4)else内嵌语句序列内嵌语句序列n;4.2 选择结构选择结构if条件语句条件语句3.多多分支分支if语句语句说明:说明:(1)首先判断表达式)首先判断表达式1,如果其值为,如果其值为tr
11、ue,则执行,则执行if语句块中的语句块中的语句,然后结束语句,然后结束if语句。语句。(2)如果表达式)如果表达式1的值为的值为false,则判断表达式,则判断表达式2,如果其值为,如果其值为true,则执行,则执行elseif语句块中的语句,然后结束语句块中的语句,然后结束if语句。语句。(3)如果表达式)如果表达式2的值为的值为false,再继续往下判断其他表达式的,再继续往下判断其他表达式的值。值。(4)如果所有表达式的值都为)如果所有表达式的值都为false,则执行,则执行else语句块中的语语句块中的语句,然后结束句,然后结束if语句。语句。4.2 选择结构选择结构if条件语句条件
12、语句3.多多分支分支if语句语句说明:说明:对于多层对于多层if嵌套结构,要特别注意嵌套结构,要特别注意if与与else的配对关系,的配对关系,一个一个else必须与一个必须与一个if配合配合,按照就近原则进行匹配,按照就近原则进行匹配。4.2 选择结构选择结构if条件语句条件语句【例例4-3】某商店为了吸引顾客,采取以下优惠活动:】某商店为了吸引顾客,采取以下优惠活动:所购商品在所购商品在1000元以下的,打元以下的,打9折优惠;所购商品多折优惠;所购商品多于于1000元的,打元的,打8折优惠。试编程实现该优惠功能。折优惠。试编程实现该优惠功能。分析:该问题属于数学分段函数问题,当所购商品总
13、额分析:该问题属于数学分段函数问题,当所购商品总额1000时,打折后的商品总额为所购商品总额时,打折后的商品总额为所购商品总额*0.8。4.2 选择结构选择结构if条件语句条件语句【例例4-4】将百分制成绩转换为五分制成绩。转换标准】将百分制成绩转换为五分制成绩。转换标准如下:如下:90分以上为分以上为“优秀优秀”,80分以上为分以上为“良良”,70分以上为分以上为“中中”,60分以上为分以上为“及格及格”,60分以分以下为下为“不及格不及格”。4.2 选择结构选择结构switch语句语句switch语句是一个控制语句,它通过将控制传递给其体内的一个语句是一个控制语句,它通过将控制传递给其体内
14、的一个case语句来语句来处理多个选择和枚举。声明处理多个选择和枚举。声明case语句的语法如下:语句的语法如下:switch(表达式表达式)case常数表达式:常数表达式:语句块语句块跳转语句(如跳转语句(如break、return、goto)./其他的其他的case子句子句defalut:语句块语句块4.2 选择结构选择结构switch语句语句【例例4-5】设计一个判断属相的程序,输入】设计一个判断属相的程序,输入011的整的整数,判断其对应的十二生肖。数,判断其对应的十二生肖。4.2 选择结构选择结构4.2.3应用实例应用实例【例例4-6】设计一个学生成绩输入程序。要求两个文本框不能设计
15、一个学生成绩输入程序。要求两个文本框不能为空且成绩应在为空且成绩应在0100之间,单选按钮必须有一个被选择。之间,单选按钮必须有一个被选择。用户输入了合法数据并单击用户输入了合法数据并单击”确定确定”按钮后的程序运行界面按钮后的程序运行界面如图所示。单击如图所示。单击”清除清除”按钮可清除上次输入的所有数据,按钮可清除上次输入的所有数据,并恢复两个单选按钮都处于未选中状态。并恢复两个单选按钮都处于未选中状态。4.2 选择结构选择结构4.2.3应用实例应用实例【例例4-7】某航空公司规定在旅游的旺季某航空公司规定在旅游的旺季79月份,如果订票月份,如果订票数超过数超过20张,票价优惠张,票价优惠
16、15%,20张以下优惠张以下优惠5%;在旅游的淡;在旅游的淡季季15月份、月份、10月份、月份、11月份,如果订票数超过月份,如果订票数超过20张,票价张,票价优惠优惠30%,20张以下优惠张以下优惠20%;其他情况一律优惠;其他情况一律优惠10%。试。试设计程序,根据月份和订票张数决定票价的优惠率,程序运设计程序,根据月份和订票张数决定票价的优惠率,程序运行界面如图行界面如图4.3 循环结构循环结构C#中的循环结构有几种:中的循环结构有几种:for循环循环while循环循环dowhile循环循环foreach循环循环支支 持持 用用 break 来来 退退 出出 循循 环环,用用 conti
17、nue来来跳跳过过本本次次循循环环进进入入下下一一次次循循环环。foreach循循环环用用于于处处理理数数组组,下下一一章章介绍介绍。4.3 循环结构循环结构for循环语句循环语句1.for语句的语法格式语句的语法格式for(表达式表达式1;表达式表达式2;表达式表达式3)循环语句序列循环语句序列;功能:功能:表达式表达式1用于参与循环条件变量的初始化,该表达式仅执行一次;用于参与循环条件变量的初始化,该表达式仅执行一次;表达式表达式2为条件判断表达式,即每次循环开始之前,判断该表达式是为条件判断表达式,即每次循环开始之前,判断该表达式是否成立,如果成立,进入下一次循环,否则,循环结束;表达式
18、否成立,如果成立,进入下一次循环,否则,循环结束;表达式3用用于参与循环条件变量的运算,一般为递增或递减的循环计数器。于参与循环条件变量的运算,一般为递增或递减的循环计数器。语句就语句就是C#应用程序中执行操作的指令,一条语句就是执行一个动作的命令。C#中的语句必须用分号“;”结尾。例如:Console.WriteLine(“Hello World!”);4.3 循环结构循环结构for循环语句循环语句说明:说明:表达式表达式1、表达式、表达式2、表达式、表达式3是可选的,但应该注意避免是可选的,但应该注意避免死循环的发生。死循环的发生。如表达式如表达式2省略,并且不采用转移语句,会导致死循环的
19、省略,并且不采用转移语句,会导致死循环的发生。发生。可以在循环体中的任何位置放置可以在循环体中的任何位置放置break语句来强制终止语句来强制终止for循环(随时跳出循环(随时跳出for循环)。循环)。语句就语句就是C#应用程序中执行操作的指令,一条语句就是执行一个动作的命令。C#中的语句必须用分号“;”结尾。例如:Console.WriteLine(“Hello World!”);4.3 循环结构循环结构for循环语句循环语句2.for循环语句的使用循环语句的使用【例例4-8】使用】使用for语句计算语句计算1+2+3+100。classProgramstaticvoidMain(strin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CSharp 程序 流程 控制
限制150内