(面向对象程序)3.程序流程控制

上传人:猪** 文档编号:243171030 上传时间:2024-09-17 格式:PPT 页数:29 大小:833.50KB
返回 下载 相关 举报
(面向对象程序)3.程序流程控制_第1页
第1页 / 共29页
(面向对象程序)3.程序流程控制_第2页
第2页 / 共29页
(面向对象程序)3.程序流程控制_第3页
第3页 / 共29页
点击查看更多>>
资源描述
单击此处添加标题,标题,1,标题,2,标题,3,标题,4,标题,5,*,第,3,课 程序流控制,本课主要学习选择结构的语句和循环结构的语句。对语法的了解是编写,C#,代码的基础。,学习完本课后,你将能够:,创建选择语句;,创建循环语句;,应用选择与循环解决实际应用问题,熟悉使用常用控件来进行输入与输出,2,3.1,选择语句,C#,提供两种类型的选择语句,(,与,C,类似,),if,(,条件表达式,),语句,1;,else,语句,2;,switch,(,表达式,),case,常数,1,:,语句,1;,break,;,case,常数,n,:,语句,n;,break,;,default,:,语句,;,break,;,if,(,条件表达式,1,),语句,1;,else if,(,条件表达式,2,),语句,2;,else if,(,条件表达式,n,),语句,n;,else,语句,m;,3,3.1.1,if,语句的使用方法以及场合,if,语句,if,(,sales 10000 ),bonus += .05 * sales;,if,(,sales 10000 ),bonus += .05 * sales;,else,bonus = 0;,if else,语句,编码规范,即使,if,子句或,else,子句只有一条语句,也要用, ,括起来。,与,C,不同,此处表达式类型必须为,bool,型,4,3.1.1,if,语句的使用方法以及场合,if-else if,if,(,sales 10000 ),bonus += .05 * sales;,else if,(,sales 5000 ),bonus = .01 * sales;,else,bonus = 0;,if,(,priorBonus,= 0 ),/,安排会议,;,5,3.1.2,switch,语句的使用方法以及场合,int,days;,switch ( month ),case 1:,days = 31;,break;,case 2:,days = 28;,break;,default:,days = 30;,break;,参见,P73,例,5-4,此处表达式类型必须为:,整型、枚举、字符串,case,部分如果有语句,则必须以,break,结束。,6,3.1.3,课堂练习:使用条件语句,假设动物园的预算计划是每周要有,5000,名以上的游客来参观。试用,if,语句检查游客数量,并显示一条消息,指示游客数量超过或低于,5000,。,1,、打开,Visual Studio .NET,,,然后打开,CSharp,示例,第,3,课,Conditions,Conditions.sln,2,、,找到任务,TODO1:using if statements,3,、若,visitors,的值等于或大于,5000,,就用,Output,方法显示一条消息,指示,5000,人的目标已经达到。否则显示消息,指示目标未达到,4,、测试代码,5,、用调试工具单步跟踪代码,6,、保存应用程序,然后退出,Visual Studio .NET,7,实例:简易计算器的实现,通过此演示,掌握,if,或,switch,语句的使用。,通过此演示,进一步掌握异常处理,通过此演示,进一步熟悉,comboBox,控件的使用,示例代码位于“,CSharp,示例,第,3,课,Caculator,”,8,界面设计,文本框,tbNum1,用以输入操作数,1,。,组合框,cbOperator,用以选择运算符。,文本框,tbNum2,用以输入操作数,2,。,文本框,tbResult,用以显示运算结果。,按钮,btnCaculate,,计算。,按钮,btnClear,,清除输入。,9,组合框,CombBox,主要属性,DropDownStyle,属性:,控制组合框的外观与功能,Simple,:,文本部分可编辑。列表部分总可见。,DropDown,:,文本部分可编辑。用户必须单击箭头按钮来显示列表部分。这是默认样式。,DropDownList,:,用户不能直接编辑文本部分。用户必须单击箭头按钮来显示列表部分。实现下拉列表用它。,10,获取组合框中输入或选定的文本,使用,Text,属性,string,oper,=,cbOperator.Text,;,使用,SelectedItem,属性,:,string,oper = cbOperator.SelectedItem,as string,;,11,使,+,运算符成为默认选项,使运算符成为默认选项的代码什么时候执行?,窗体开始运行的时候,(,加载时,),由于无法使用属性设置达到这一要求,只能编程实现。考虑以下问题:,这个代码写在哪个事件里?,Form1_Load,事件,如何设置?代码怎么写?,使用组合框的,SelectedIndex,属性,cbOperator.SelectedIndex = 0;,12,完成“计算”功能,使用,switch,语句,double,result = 0.0;,switch,(oper),case,:,result = num1 + num2;,break,;,case,:,result = num1 - num2;,break,;,case,:,result = num1 - num2;,break,;,case,:,result = num1 / num2;,break,;,计算前应检查除数是否为,0,,,或使用异常进行处理,也可考虑使用,default,项处理用户选用其它运算符的情况,(,虽然不可能出现,),13,其它,异常处理,输入或计算过程中的异常处理,由同学们在实验报告中完成。,“清除,”,按钮的功能,由同学们在实验报告中实现,教材,P77,例,5-7,介绍了单选钮、复选框、分组框控件和,Font,对象的使用,课下大家认真阅读。,14,使用单选钮选择运算符,RadioButton,控件,Text,:文字,Checked,:是否选中,一个窗体中的单选钮一次只能选中一个。,如果需要分组选择,可以使用分组框,GroupBox,对单选钮控件进行分组,一组内单选钮同时只能选中一个。,15,使用单选钮完成“计算”功能,double,result = 0.0;,if,(rbPlus.Checked),/,加法选,中,result = num1 + num2;,else if,(rbSub.Checked),/,减法选中,result = num1 - num2;,else if,(rbMulty.Checked),/,乘法选中,result = num1 * num2;,else if,(rbDiv.Checked),/,除法选中,result = num1 / num2;,16,3.2,创建循环语句,for (,初始化表达式,;,条件表达式,;,迭代表达式,),语句,;,while (,条件表达式,),语句,;,do,语句,;, while (,条件表达式,),此外还有,foreach,循环,用于访问数组和集合类对象,以后介绍。,17,3.2.1 for,循环,当预先知道代码语句的重复执行次数时,使用,for,循环,for (,int,i = 0; i 0; j -= 10 ),Console.WriteLine(j,= 0, j);,for (,初始化表达式,;,条件表达式,;,迭代表达式,),语句,;,示例,与,C,不同,可以在此处定义循环变量类型,这里,它是局部变量,18,3.2.2 while,循环,在循环开始时做一个判断,如果值为假,循环将永远不会运行,循环一直运行到条件变为假,关键字,continue,和,break,int,i = 1;,while (i = 10),Console.WriteLine(“i,=0”, i);,i+;,19,课堂讨论,怎样才能保证,while,循环可以退出循环体的执行?,在,while,循环体中可以不修改循环条件的值吗?,20,3.2.3,do,循环,无条件执行循环中的代码并完成一次判断。如果判断语句值为真,循环就继续下去,直到该值变为假,do,/,至少需要执行一次的代码, while (,条件成立,);,int,i = 1;,do ,Console.WriteLine,(0, i+);, while (i = 10);,示例,21,3.2.4,课堂练习,使用循环语句,在本练习中,使用,for,循环来计算从,1,到,1000,的所有整数的和,。若时间允许,请用,while,循环和,do,循环执行上述运算。,1,、打开,Visual Studio .NET,,,然后打开,Csharp,示例,第,3,课,Loops,Loops.sln,。,2,、,找到任务,TODO 1: Writing loops.,3,、,使用,for,循环,把从,1,到,1000,的所有整数相加。,4,、用下列代码显示结果:,Output(,结果为:,+total);,5,、,使用,while,循环,重复任务,3,和任务,4,6,、使用,do,循环,重复任务,3,和任务,4,7,、按,F5,键,编译并运行应用程序。,8,、保存应用程序并退出,Visual Studio .NET,。,22,演示:计算复利存款,某人新开一个帐户,输入存入的金额,(,本金,),、年利率、存期,计算每年年终余额,掌握使用循环解决问题,掌握,NumericUpDown,控件的使用,掌握,TextBox,控件的使用,示例代码位于“,CSharp,示例,第,3,课,Savings,”,23,界面设计,nupdPrincipal,输入本金,nupdRate,输入年利率,nupdRate,输入存期,tbOutput,显示计算结果,按钮,btnCaculate,,计算。,按钮,btnClear,,清除输入。,为什么要使用,NumericUpDown,控件输入数据?,用户只能输入数字,数据限定在指定范围,不会输错;,输入的数据范围变动不大时,用户操作方便,NumericUpDown,有哪些重要属性?,Value:,用户输入的值,Maximum:,用户能够输入的最大值,Minimum:,用户能够输入的最小值,DecimalPlaces,:,小数位数,Increment:,增减的单位数量,ThousandsSeperator,:,是否显示千分位,24,几个控件的主要属性设置,Value:,1000,Maximum:,100 0000,Minimum:,1000,DecimalPlaces,:,2,Increment:,100,ThousandsSeperator,:,True,Value:,10,Maximum:,100,Minimum:,0,DecimalPlaces,:,2,Increment:,1,ThousandsSeperator,:,False,Value:,5,Maximum:,20,Minimum:,3,DecimalPlaces,:,0,Increment:,1,ThousandsSeperator,:,False,MultiLine,:,True,ReadOnly,:,True,ScrollBars,:,Both,25,“计算”功能,decimal,amount = 0.0M; /,存款余额,/,获取存款本金,decimal,principal =,nupdPrincipal.Value,;,/,获取存款年利率,用户输入的是百分数,转换为小数,double,rate = (,double,)nupdRate.Value,/ 100.0;,/,获取存期,int,period = (,int,)nupdPeriod.Value,;,/,逐月进行计算,amount = principal; /,起始计算时,存款余额即是本金,for,(,int,year = 1; year = period; year+),amount += amount * (,decimal,)rate,;,tbOutput.Text,+=,String,.Format(,0,4t1:crn,year, amount);,26,关于格式化字符串,许多地方要将数据格式化后输出,如,Console,.WriteLine,(,它们的和是,0, sum);,lblDate.Text,=,DateTime,.Now.ToString,(,yyyy,年,M,月,dd,日,);,lblTotal.Text,=,String,.Format,(,总金额:,0:C, amount);,常用格式的说明符,数值,C,或,c:,货币格式,D,或,d:,十进制整数,E,或,e:,科学计数法,N,或,n:,千分位格式,X,或,x:,十六进制整数,日期,d:,短日期,D:,长日期,t:,短时间,T:,长时间,f:,完整日期,(,短时间,)F:,完整日期,(,长时间,),具体说明及示例请参看,MSDN,帮助,index,alignment,:,formatString,27,实验项目实践,完成实验,3,实验报告,完成“使用条件语句”的课堂练习,(,第,3,课,Conditions,),。,完成“使用循环语句”的课堂练习,(,第,3,课,Loops,),;,选择下面一个程序来完成,复印中心收费费用计算;,输入一个整数,计算该整数的阶乘;,求,1,99,的所有奇数的和。,课后练习:,课堂示例:简易计算器,课堂示例:计算复利存款,28,实验项目实践,项目实践,(,分组选做,),:,个人所得税计算器,详见,P84,习题,23,简易计算器,详见,P85,习题,24,储蓄账户问题,若存,x,元到一个储蓄帐户,利息为,r,,在每年年终时从帐户中取出,y,元,大约需要多少年这个储蓄帐户被取空。,输入本金,x,利息,r%,,及支出额,y,,输出每年的帐户余额,计算复利。,毕达哥拉斯三角形(,P106,习题,11,),3,个边的边长都为整数值的直角三角形被称为毕达哥拉斯三角形。编写一程序找出所有的毕达哥拉斯三角形,其,3,边都为不大于,30,的整数。,作为项目实践的内容,应该界面美观、方便操作,运行稳定,(,运行时不会出错,),。并提供必备的软件文档,(,需求分析、界面设计、代码设计、测试等文档,),29,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!