




已阅读5页,还剩63页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,程序控制结构及语句,程序的三种结构,顺序结构分支结构循环结构,程序的三种结构,顺序结构,顺序结构:指按程序的书写顺序依次执行A段程序、B段程序。,分支结构,分支结构:C#中控制分支结构的语句包括:ifelse语句和switch语句。,P,A,B,成立,不成立,选择结构,循环结构,循环结构:C#中控制循环结构的语句包括:while、dowhile、for和foreach语句。,P,P,A,成立,成立,循环结构,不成立,A,不成立,程序的三种结构条件语句循环语句小结实验习题,条件语句,控制结构(2),条件语句:if/elseif/else,语法格式如下:,if(布尔表达式)语句1或语句块1else语句2或语句块2,if(grade60)label1.Text=Passed!;elselabel1.Text=Failed!;,举例:,控制结构(3),if/else语句的嵌套:,if(布尔表达式)语句1或语句块1else语句2或语句块2,其中的语句块1或2也可以为if/else语句,if(布尔表达式)语句1或语句块1elseif(布尔表达式)语句3或语句块3elseif(布尔表达式)语句块4else语句5,!if语句嵌套规则:else总是与其最近的if相匹配,控制结构(4),if/else语句的嵌套:,if(布尔表达式)if(布尔表达式)语句1或语句块1else语句2或语句块2,if(布尔表达式)if(布尔表达式)语句1或语句块1else语句2或语句块2,if(布尔表达式)if(布尔表达式)语句1或语句块1else语句2或语句块2,【例3-2】输入两个整数,输出较大的整数。设有整数a、整数b及存放较大整数的变量max。,条件语句,代码分析,privatevoidbutton1_Click(objectsender,EventArgse)intmax=int.Parse(txtA.Text);intb=int.Parse(txtB.Text);if(maxb)/省略else子句的if语句max=b;lblResult.Text=较大的值为:+max;,If语句,if语句是最有用的控制结构之一。ifelse语句的语法:if(布尔表达式)执行操作的语句或if(布尔表达式)执行操作的语句else执行操作的语句,If语句(续),一个if语句的执行过程是这样的:,首先判断布尔表达式。,如果布尔表达式的结果在逻辑上是正确的,那么就顺序执行if语句块。,如果布尔表达式的结果在逻辑上是错误的,那么就跨过if语句块,此时如果有else关键字,就立刻进入else语句块开始执行。否则就执行if语句块外的下一行代码。,If语句(续),if.else.条件语句的流程图(1):,条件,分支二的语句,分支一的语句,前面的语句,继续后面的语句,真,假,If语句(续),if.else.条件语句的流程图(2):,条件,分支一的语句,真,继续后面的语句,前面的语句,假,【例3-3】假设某校学生奖学金分为5个等级,其中一等奖学金250元,二等奖学金200元,三等奖学金150元,四等奖学金100元,五等奖学金50元。如图3-6所示,设计一个查询奖学金的程序。,条件语句,条件语句,【要求】:本题要求当用户输入1、2、3、4或5时,单击“确定”按钮,能显示相应的奖学金的数额;如果输入1、2、3、4、5之外的字符,单击“确定”按钮后,将显示错误提示信息。,代码分析,示例代码,课堂讨论,什么时候需要使用嵌套的if语句?if语句可以分为哪几个组成部分?,有多于一个条件判断时可以嵌套使用if;,条件部分和分支部分,分支部分可以有两个。,随堂练习,1.用户输入一个整数,请写一段程序,通过if.else.语句判断该数是偶数还是奇数。,控制结构(5),switch/case语句(又称分支语句),语法形式如下:,switch(表达式)case值1:语句组1break;case值n:语句组nbreak;default:语句组(n+1),说明:1)其中每个case中的break语句并不是必须的。2)表达式的数据类型可以是字符类型、字节类型、短整型、整数型或兼容的引用类型;不能是布尔型、长整型、单精度浮点型或双精度浮点型。3)值1值n必须是常量表达式,其数据类型必须与表达式的类型相匹配。4)如果某个case分支不包含break语句,则程序会继续执行下一个case分支的语句组。,控制结构(6),switch/case语句语句举例(P43):,switch(studentGrade)caseA:casea:label1.Text=优秀”;break;default:label1.Text=成绩有误”;,SwitchCase.java,【例3-4】假设某商场实行优惠打折,规定一次购买的商品金额越多优惠率越高。优惠标准如下。金额500不优惠500金额1000优惠5%1000金额3000优惠10%3000金额5000优惠15%金额5000优惠20%,switch语句,switch语句,分析:此题中优惠的变化是有规律的,即优惠的变化点都是500的倍数(500,1000,3000,5000)。利用以上特点,将金额除以500的商求整数,则可以得到5000元以内金额的10个级别。其中0级为不足500元的购物金额,9级为大于等于4500元小于5000元的购物金额。大于等于5000元的购物金额在代码中作为缺省情况处理。,switch语句,代码分析,示例代码,switch语句,switch语句的格式:switch(控制表达式)case常量表达式1:语句组1;break;case常量表达式2:语句组2;break;.case常量表达式:语句组n;break;default:语句组n+1;break;,switch语句(续),关于switch语句有几个需要注意:,控制传递给与控制表达式的值匹配的case语句,switch()中的输入参数只能是整型或字符型(包括字符串),不能用实型(浮点型)数,break使得程序在执行完选中的分支后,可以跳出整个switch语句(即跳到紧接switch的一对之后),完成switch,必要时,可在各个case语句中使用来明确产生独立的复合语句,switch语句并不能代替所有的ifelse.语句,课堂讨论,如何使用ifelse嵌套模拟switch语句?,intmoons;if(aPlanet=Planet.Mercury)moons=0;elseif(aPlanet=Planet.Venus)moons=0;elseif(aPlanet=Planet.Earth)moons=1;,随堂练习,输入某学生成绩,根据成绩的情况输出相应的评语。成绩在90分以上,输出评语“优秀”;成绩在70到90之间,输出评语“良好”;成绩在60到70之间,输出评语“合格”;成绩在60分以下,输出评语“不合格”。,示例代码,跟踪程序,使用VisualStudio2008进行程序跟踪,使用VisualStudio2008创建一个项目。,把光标停留在上面代码中背景为灰色的一行代码上,按F9键插入断点。,在标准工具栏的“解决方案配置”下拉列表中选择Debug。,打开默认生成的Program.cs文件,使用上面的程序完全覆盖Program.cs的内容。,跟踪程序(续),当程序执行到断点,程序会切换到VisualStudio2005窗口,并将当前执行的那行指令以黄色(默认)表示。,单击“调试”菜单,选择“逐语句”(记住快捷键,不同版本快捷键可能不同)。程序将向下执行一行语句。通过这种方法,就可以知道程序是如何一步一步根据用户输入的条件运行的。,按F5健运行程序。,跟踪程序,多媒体演示,示例代码,【例3-5】计算1100的奇数和。使用for语句实现,循环语句,代码分析,privatevoidbutton1_Click(objectsender,EventArgse)intsum=0;/声明并初始化求和变量for(inti=1;i=100;i=i+2)/循环变量每次循环递增2sum+=i;/循环语句序列仅有一句,故省略大括号lblSum.Text=1到100的奇数和为:+sum;/循环语句的后续语句,输出求和结果,for循环while循环dowhile循环continue和break在循环中的应用,循环语句,控制结构(7),for循环语句语法格式如下:,for(初始化表达式;条件表达式;更新表达式)循环体,其中:1)初始化表示式、条件表达式和更新表达式都是可选项;2)初始化表示式可以是变量定义表达式或赋值表达式列表之一,但它只会执行一次。下列初始化表达式就是错误的:3)条件表达式是布尔表达式,为true则执行循环体;为false则退出循环。如果无条件表达式则默认为条件表达式为true;4)更新表达式可以是运算表达式列表,它用于改变循环的状态。,i=0,intj=3,控制结构(8),for循环语句举例:,for循环,初始化表达式,条件表达式,循环语句,迭代表达式,开始,结束,true,false,用for循环在逐行输出数字:50。,随堂练习,6能被1、2、3、6整除,这些数称为6的因子。请循环列出36的所有因子。,随堂练习,while循环语句格式为:当条件(布尔表达式)为true,则不断地执行语句或语句块“while”循环中止条件是布尔表达式变为false如果布尔表达式一开始就为false,则不执行循环体,控制结构(9),while(布尔表达式)语句或语句块,for(;布尔表达式;)语句或语句块,等价于,【例3-6】如图3-15所示,设有一张厚为xmm,面积足够大的纸,将它不断地对折。试问对折多少次后,其厚度可达珠穆朗玛峰的高度(8844.43m)。,while循环(续),代码分析,示例代码,while循环,while循环的语法格式:while(条件)需要循环执行的语句;在讲解while循环的使用之前,先和if语句做一个比较:while(条件)需要循环执行的语句;if(条件)条件成立时执行的语句;,while循环(续),while循环的流程图:,课堂讨论,怎样才能保证while循环可以退出循环体的执行?在while循环体中可以不修改循环条件的值吗?,控制结构(10),dowhile语句先执行,后判定条件即循规环体至少执行1次格式,do语句或语句块while(布尔表达式);,【例5-3】输入一个企业每年产值的平均增长速度,求多少年后产值能够翻一番。,dowhile循环,代码分析,privatevoidbutton1_Click(objectsender,EventArgse)doubleproductionValue=100,rise;rise=double.Parse(txtRise.Text)/100;intyears=0;doproductionValue=productionValue*(1+rise);years+=1;while(productionValuey)或(ay)while(i=10);i+;(2)for(k=0.1;k!=1.0;k+=0.1)Console.WriteLine(k);,习题(续),找出下列程序段的错误并改正。(3)switch(n)case1:Console.WriteLine(Thenumberis1);case2:Console.WriteLine(Thenumberis2);break;default:Console.WriteLine(Thenumberisnot1or2);break;,习题(续),5.写出下列程序运行结果。usingSystem;publicclassPrintingpublicstaticvoidMain(stringargs)for(inti=1;i=10;i+)for(intj=1;j=5;j+)Console.Write();Console.WriteLine();/endouterfor/endMain/endclassPrinting,C#程序设计,一、个人所得税计算器根据月收入计算个人所得税。个税起征点为3500元。月收入超过3500元的按下列方法计算:级数全月应纳税所得额税率(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南省嵩明县2025年上半年事业单位公开遴选试题含答案分析
- 河南省孟州市2025年上半年公开招聘村务工作者试题含答案分析
- 河北省滦平县2025年上半年事业单位公开遴选试题含答案分析
- 河北省涞水县2025年上半年公开招聘城市协管员试题含答案分析
- 2025年度教育信息化项目融资借款合同样本
- 2025年医疗器械企业采购供应链劳动合同范本
- 2025房地产企业合同台账编制与信息化管理规范
- 2025版企业员工借调与薪酬福利调整协议
- 2025版水果电商O2O平台合作协议
- 2025版泥水班组施工施工质量保证体系建立合同
- 2023年山东水发集团有限公司招聘笔试题库及答案解析
- 全国2023年招商银行招银网络科技校园招聘考试模拟卷3套含答案详解
- YY/T 1745-2021自动粪便分析仪
- MT 220-1990煤矿用防爆柴油机械排气中一氧化碳、氮氧化物检验规范
- 燕窝工艺参考
- 班组施工任务单
- 斜拉桥主桥索塔施工监理实施细则
- 钢结构模块化安装施工方案
- 双氧水生产工艺简单简介
- KNS机器参数,干货
- 医院输血科技术人员绩效考核指标
评论
0/150
提交评论