c程序设计循环结构-求1到100累加_第1页
c程序设计循环结构-求1到100累加_第2页
c程序设计循环结构-求1到100累加_第3页
c程序设计循环结构-求1到100累加_第4页
c程序设计循环结构-求1到100累加_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 c#.net语言基本语法语言基本语法 模块模块5 求求1到到100的累加和的累加和 一、教学目标一、教学目标 会用循环结构的三种语句编写基本的循会用循环结构的三种语句编写基本的循 环程序环程序 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 C#.net程序设计程序设计 课件中是以课件中是以vs2005为界面介绍的,开发环境如为界面介绍的,开发环境如 果是果是vs2008或或vs2010,操作方法都基本一致,操作方法都基本一致, 开发环境只是界面有少许

2、不同,基本知识相同,不开发环境只是界面有少许不同,基本知识相同,不 影响读者学习本课程。影响读者学习本课程。 课件配套教材:课件配套教材:c#.net程序设计程序设计 出版社:浙江大学出版社出版社:浙江大学出版社 主编:黎浩宏主编:黎浩宏 课件例子源代码下载网址: 或在百度搜索:“c#.net程序设计配套源代码程序设计配套源代码 (前三章)(前三章) ” 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 二、工作任务二、工作任务 求1100的累计和,根据已有的知识,可以用“1+2+100” 来求解,但显

3、然很繁琐。换个思路来考虑,先定义一个整形变 量sum(称为累计器),其初值为0,利用sum += n来计算 (n依次取1、2、100),代码如下可以设置如下: oint i,sum=0; osum = 0; oi = 1; osum += i; oi+; osum += i; oi+; 1. 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 这只是前面几行代码,如果要用顺序结构语句全 部写好,则非常麻烦,我们可以观察到,从 第4行代码开始,都是重复第4、5行代码, 只要将第4、5行代码重复执行100次,

4、即能 解决该问题。 用循环语句编写的程序运行效果如图2-19所示, 单击“累加和”按钮,在label1的位置上会 显示1+2+.+100的和。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 三、相关实践知识三、相关实践知识 (一)设计窗体及相关控件属性(一)设计窗体及相关控件属性 启动visual studio 2005开发工具然后创建一个新的 c#.net windows应用程序。 1设计窗体界面设计窗

5、体界面 窗体设计界面依照图2-19图所示添加一个标签(Label) 和一个按钮(Button)。 2添加控件和设置控件属性添加控件和设置控件属性 依照图2-19所示设置按钮的Text属性。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (二)编写事件处理程序(二)编写事件处理程序 1编写编写“累加和累加和”按钮的按钮的Click事件处理方法事件处理方法 程序代码如下: oprivate void button1_Click(object sender, EventArgs e) o o int i,

6、sum; o sum = 0; o i = 1; 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 owhile (i = 100) o o sum += i; o i+; o o label1.Text = 1+2+.+100的和是: + Convert.ToInt32(sum); o 第6到第10行代码即为循环语句,其中第8到第9行代码 会循环重复执行100次,当i变化到101时,将退出 循环。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块

7、5 求求1到到100的累加和的累加和 三、相关理论知识三、相关理论知识 (一)(一)while语句语句 while语句的一般语法格式为: while (条件表达式) 循环语句; while语句的执行过程: 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 while语句的执行过程:语句的执行过程: (1)求解)求解while括号中的条件表达式。如果其括号中的条件表达式。如果其 值为真,转到(值为真,转到(2);否则转到();否则转到(3)。)。 (2)执行循环体语句组,然后转()执行循环体语句组,然后转

8、(1)。)。 (3)退出循环,执行)退出循环,执行while语句的下一条。语句的下一条。 条件表达式可以是逻辑表达式或者关系表达式。条件表达式可以是逻辑表达式或者关系表达式。 其流程图如图其流程图如图 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 注意事项:注意事项: owhile语句后千万不要加分号语句后千万不要加分号“;”,分号,分号“;” 也是一条语句,是空语句,也是一条语句,是空语句,c#将分号将分号“;”作为作为 while语句的循环语句,如将第语句的循环语句,如将第6行代码写成行代码写成

9、 “while (i = 100);”,即将,即将while语句后加语句后加 上了分号,则将陷入死循环。上了分号,则将陷入死循环。 1. 在循环语句中中应有使循环趋向于结束的语句。如在循环语句中中应有使循环趋向于结束的语句。如 果无此语句,将陷入死循环。如本模块中如果没有果无此语句,将陷入死循环。如本模块中如果没有 i+语句,则语句,则i的值不会变化,永远为的值不会变化,永远为1,则,则while 语句后括号中的关系表达式语句后括号中的关系表达式“i=100”永远为真,永远为真, 陷入死循环。陷入死循环。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到10

10、0累加 模块模块5 求求1到到100的累加和的累加和 (二)(二)do-while语句语句 do-while语句的一般语法格式为:语句的一般语法格式为: do 循环语句;循环语句; while(条件表达式);(条件表达式); 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 do-while语句的执行过程:语句的执行过程: (1)执行循环语句。)执行循环语句。 (2)求解)求解while括号中的条件表达式,如果条括号中的条件表达式,如果条 件表达式的值为真,则转向(件表达式的值为真,则转向(1)继续执行

11、;)继续执行; 否则,转向(否则,转向(3)。)。 (3)执行)执行do-while的下一条语句。的下一条语句。 do-while循环语句的特点是:先执行循环体语循环语句的特点是:先执行循环体语 句,然后再判断循环条件。句,然后再判断循环条件。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 注意事项:注意事项: o do-while语句中,语句中,while后一定要加分号后一定要加分号 “;”,否则程序编译通不过,会报错。,否则程序编译通不过,会报错。 1. 在循环语句中中应有使循环趋向于结束的语在

12、循环语句中中应有使循环趋向于结束的语 句。如果无此语句,将陷入死循环。句。如果无此语句,将陷入死循环。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 下面我们来求下面我们来求10!,即!,即1*2*3.*10,代码如下:,代码如下: private void button1_Click(object sender, EventArgs e) int i,f; f = 1; i = 1; while (i = 10) f *= i; i+; label1.Text = 1*2*3.*10积是:积是:

13、+ Convert.ToInt32(f); 注意:要将累乘积注意:要将累乘积f变量赋初值为变量赋初值为1,如果是求更大数的阶乘,则要将累乘积,如果是求更大数的阶乘,则要将累乘积f变量定变量定 义为义为long整型变量,否则将会出错。整型变量,否则将会出错。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (三)(三)for语句语句 for语句比语句比while语句和语句和do-while语句都要灵语句都要灵 活,是一种功能更强大、更常用的循环语句。活,是一种功能更强大、更常用的循环语句。 for语句的

14、一般语法格式为:语句的一般语法格式为: for(表达式表达式1;表达式;表达式2;表达式;表达式3) 循环语句;循环语句; 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 for语句的执行过程语句的执行过程 (1)求解表达式)求解表达式1。 (2)求解表达式)求解表达式2。如果其值真,执行(。如果其值真,执行(3);); 否则,转至(否则,转至(4)。)。 (3)执行循环语句,并求解表达式)执行循环语句,并求解表达式3,然后转,然后转 向(向(2)。)。 (4)执行)执行for语句的下一条语句。语句的

15、下一条语句。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 如本模块中可以将如本模块中可以将while语句改为语句改为for语句,代码如下:语句,代码如下: private void button1_Click(object sender, EventArgs e) int i,sum; sum = 0; for (i = 1; i = 100; i+) sum += i; label1.Text = 1+2+.+100的和是:的和是: + Convert.ToInt32(sum); 浙江工贸职业技

16、术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 说明:说明: (1)for语句括号中的两个分号语句括号中的两个分号“;”不能写不能写 错,也不能少写,错,也不能少写,for语句就是用分号来判语句就是用分号来判 断表达式断表达式1、表达式、表达式2和表达式和表达式3的,如上面的,如上面 代码,代码,for (i = 1; i = 100; i+)中,中, 表达式表达式1是是i=1;表达式;表达式2是是 i = 100, 一般是条件表达式,即关系表达式或者是逻一般是条件表达式,即关系表达式或者是逻 辑表达式,表达式辑表

17、达式,表达式3是是i+,一定要记住这,一定要记住这 三个表达式的运行顺序。三个表达式的运行顺序。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (2)for语句中可省略表达式语句中可省略表达式1,但要保留其后,但要保留其后 两个分号。两个分号。 . int i=1; for( ;i=100;i+) 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (3)for语句可以省略表达式语句可以省略表达式2,但应保留表

18、达,但应保留表达 式式2后面的分号。不判断表达式后面的分号。不判断表达式2的条件是否的条件是否 成立,循环将一直进行下去,此时,需要在成立,循环将一直进行下去,此时,需要在 循环体中添加跳出循环的控制语句,否则将循环体中添加跳出循环的控制语句,否则将 陷入死循环。陷入死循环。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (4)for中可以省略表达式中可以省略表达式3。此时应将表达式。此时应将表达式 3放入循环语句中,以结束循环。放入循环语句中,以结束循环。 上例中的上例中的for语句可以用下面的方

19、式表示:语句可以用下面的方式表示: for (i = 1; i = 100;) sum += i; i+; 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (5)for语句中的语句中的3个表达式可同时省略,两个分号不能省略。此个表达式可同时省略,两个分号不能省略。此 时将将陷入死循环。时将将陷入死循环。 如:如: for ( ; ;) 循环语句;循环语句; 等效于:等效于: while(true) 循环语句;循环语句; 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1

20、到100累加 模块模块5 求求1到到100的累加和的累加和 例例2-9 输出输出1到到200以内即能被以内即能被3整除,个位数整除,个位数 是是6的所有整数。的所有整数。 例例2-10 求下列表达式的值。求下列表达式的值。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 如果将第如果将第8行代码改为行代码改为t = 1/ i;s的值将为的值将为1, 因为我们知道,对于除法因为我们知道,对于除法“/”,当其两侧都,当其两侧都 是整数时,所求的商会丢弃小数,商为整数。是整数时,所求的商会丢弃小数,商为整数

21、。 所以所以t在循环在循环20次当中,都是次当中,都是0,那么,那么s的值的值 自然为自然为1了。在做除法运算时,千万要记住,了。在做除法运算时,千万要记住, 如果要保留小数,必须将其中一个数设置为如果要保留小数,必须将其中一个数设置为 实数形式。实数形式。 如果将如果将t = 1.0f/ i;代码改为代码改为t = 1.0/ i;程序程序 将编译通不过,报错,想想为什么?将编译通不过,报错,想想为什么? 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (三)三种循环语句说明(三)三种循环语句说明 1

22、.只要是循环语句,可以用只要是循环语句,可以用while、do-while 或或for语句中的任何一种循环语句都可以实语句中的任何一种循环语句都可以实 现,常用的是现,常用的是for语句,该语句用起来最方语句,该语句用起来最方 便。便。 2.当循环语句只有一行代码时,可以将循环语当循环语句只有一行代码时,可以将循环语 句中的大括号省略,否则,一定要有大括号。句中的大括号省略,否则,一定要有大括号。 但建议都使用大括号。但建议都使用大括号。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 如:如: fo

23、r (i = 1; i = 100; i+) for (i = 1; i = 100; i+) sum += i; 等价于等价于 sum += i; 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 3再次强调,在再次强调,在while语句和语句和for语句后面千语句后面千 万不要加分号,而万不要加分号,而do-while语句中,在语句中,在 while语句后一定有分号。这一点大家在练语句后一定有分号。这一点大家在练 习时,多看看这三种语句的语法格式,慢慢习时,多看看这三种语句的语法格式,慢慢 就熟悉了

24、。就熟悉了。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (四)嵌套循环语句(四)嵌套循环语句 和和if语句类似,就是循环语句中包含循环语句,三种循环语句类似,就是循环语句中包含循环语句,三种循环(while循循 环、环、do-while循环和循环和for循环循环)可以互相嵌套。可以互相嵌套。 下面几种都是合法的形式:下面几种都是合法的形式: (1) while( ) (2) do (3) for(;) while( ) do for(;) while( ); while( ); 浙江工贸职业技术

25、学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (4) while( ) (5) for(;) (6) do do while( ) for(;) while( ) while( ); 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 例例2-11 使用嵌套循环语句输出变量的值。使用嵌套循环语句输出变量的值。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到

26、100的累加和的累加和 例例2-12 使用嵌套循环语句输出使用嵌套循环语句输出9*9乘法表乘法表 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 (五)(五)break和和continue语句语句 1.break语句语句 在在switch语句中,我们已经学过语句中,我们已经学过break语句的语句的 用法和功能,其作用是用来使程序流程跳出用法和功能,其作用是用来使程序流程跳出 switch语句,继续执行语句,继续执行switch后面的语句;后面的语句; break语句也可以用于循环语句语句也可以用于循

27、环语句while、 do-while、for语句中。在循环语句中,语句中。在循环语句中, break用来从当前所在的循环内跳出循环,用来从当前所在的循环内跳出循环, 强行结束循环。强行结束循环。 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 break语句的一般语法格式如下:语句的一般语法格式如下: break; break语句通常和语句通常和if语句配合,以在达到某种条件时从循环体内跳出的目的。如下语句配合,以在达到某种条件时从循环体内跳出的目的。如下 列代码:列代码: private void Form1_Load(object sender, EventArgs e) int i; for (i = 1; i = 5) break; 浙江工贸职业技术学院浙江工贸职业技术学院 黎浩黎浩 宏宏 c程序设计循环结构-求1到100累加 模块模块5 求求1到到100的累加和的累加和 当程序运行时,在窗体上的标签上显示的内容为当程序运行时,在窗体上的标签上显示的内容为 “12345”,而不是,而不是“123456789”,因,因 为当为当i变到变到5时,程序已经强行结束了循环语时,程序已经强行结束了循环语 句,从循环语句中跳出来了。句,从

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论