书签 分享 收藏 举报 版权申诉 / 78
上传文档赚钱

类型第4章-循环结构程序设计素材课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4608617
  • 上传时间:2022-12-24
  • 格式:PPT
  • 页数:78
  • 大小:323.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《第4章-循环结构程序设计素材课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    循环 结构 程序设计 素材 课件
    资源描述:

    1、 在解决实际问题的过程中,常常会遇在解决实际问题的过程中,常常会遇到一些需要重复处理的问题。循环结构可到一些需要重复处理的问题。循环结构可用来处理需要重复处理的问题,所以,循用来处理需要重复处理的问题,所以,循环结构又称为重复结构。环结构又称为重复结构。4.1 循环的概念循环的概念 4.2 语句语句4.3 循环循环 4.4 循环循环 4.5 语句和语句语句和语句4.6 多重循环多重循环4.7 程序举例程序举例 4.8 三种循环语句的比较三种循环语句的比较 第4章 循环结构程序设计 循环结构,又称为重复结构,是结构化程序设计的三循环结构,又称为重复结构,是结构化程序设计的三种基本结构之一,在数值

    2、计算和很多问题的处理中都需要种基本结构之一,在数值计算和很多问题的处理中都需要用到循环控制。例如,用迭代法求方程的根,计算全班同用到循环控制。例如,用迭代法求方程的根,计算全班同学的平均分等。几乎所有的应用程序都包含循环,它和顺学的平均分等。几乎所有的应用程序都包含循环,它和顺序结构、选择结构共同作为各种复杂结构程序的基本构造序结构、选择结构共同作为各种复杂结构程序的基本构造单元。因此熟练地掌握选择结构和循环结构的概念及使用单元。因此熟练地掌握选择结构和循环结构的概念及使用,是程序设计最基本的要求。,是程序设计最基本的要求。4.1 循环的概念循环的概念 例如,计算例如,计算1100的累计和。的

    3、累计和。根据已有的知识,可以用根据已有的知识,可以用1+2+3+100来计算,但显然很来计算,但显然很繁琐。现在换个思路来考虑:首先设置一个累加器,其初值为繁琐。现在换个思路来考虑:首先设置一个累加器,其初值为0,利用来计算(,利用来计算(i依次取依次取1、2、100),只要解决以下),只要解决以下3个问个问题即可:题即可:将将i的初值置为的初值置为1;每执行每执行1次后,次后,i值增值增1,其过程如下所示:,其过程如下所示:0;1;重复执重复执 行部分行部分 ;1;当当i增到增到101时,停止计算。时,停止计算。此时,的值就是此时,的值就是1100的累计和。的累计和。4.1 循环的概念循环的

    4、概念4.2 语句语句用来实现用来实现“当型当型”循环,其一般形式为:循环,其一般形式为:(循环条件表达式循环条件表达式)循环体语句循环体语句 在执行语句时,先对循环条件表达式进行计算,若其值为在执行语句时,先对循环条件表达式进行计算,若其值为非非0 0(真),则反复执行循环体语句,直到循环条件表达式的(真),则反复执行循环体语句,直到循环条件表达式的值为值为0 0(假)时,循环结束,程序控制转至循环语句的下一条(假)时,循环结束,程序控制转至循环语句的下一条语句。其执行过程如图语句。其执行过程如图4-14-1所示。所示。图图4-1 语句的执行过程语句的执行过程使用语句时,应注意以下几个问题:使

    5、用语句时,应注意以下几个问题:循环体语句可以是一个空语句、一个语句或一组语句。当循循环体语句可以是一个空语句、一个语句或一组语句。当循环体是一组语句时,则必须用花括号括起来,组成复合语句。环体是一组语句时,则必须用花括号括起来,组成复合语句。图图4-2 计算计算1100累计和的流程图和图描述累计和的流程图和图描述 4.2 语句语句 ();/*定义整型变量定义整型变量*/0;/*将的初值置为将的初值置为0*/1;/*将将i的初值置为的初值置为1*/(i=100)/*若若i=100则执行循环体则执行循环体*/;/*将将i进行累加进行累加*/1;/*i的值加的值加1*/(n);/*输出的值输出的值*

    6、/程序运行结果:程序运行结果:50504.2 语句语句 语句中的循环条件表达式可以是任何类型的表达式。语句中的循环条件表达式可以是任何类型的表达式。循环体内一定要有使表达式的值变为循环体内一定要有使表达式的值变为0(假)的操作,否则(假)的操作,否则 循环将无限进行,即形成死循环。循环将无限进行,即形成死循环。语句的特点是语句的特点是“先判断,后执行先判断,后执行”,如果循环条件表达,如果循环条件表达 式的值一开始就为式的值一开始就为0,则循环体语句一次也不执行。,则循环体语句一次也不执行。例如,对于下面的语句:例如,对于下面的语句:()();如果变量如果变量i赋值赋值0时,则一次也不执行循环

    7、体语句;如果变量时,则一次也不执行循环体语句;如果变量 i赋值赋值4时,则其运行结果为:时,则其运行结果为:3210。4.2 语句语句例例4.1 利用公式利用公式求求的近似值,直到最后一项的绝对值小于的近似值,直到最后一项的绝对值小于 为止为止。分析:本题仍为求累加和问题,因此,循环体分析:本题仍为求累加和问题,因此,循环体中有这样的求累加和表达式。为公式中的某一项,中有这样的求累加和表达式。为公式中的某一项,其特点是,分母为奇数,且相邻项符号相反,当其特点是,分母为奇数,且相邻项符号相反,当 时,停止求累加和。时,停止求累加和。的近似值可以表示为的近似值可以表示为4。917151311441

    8、04104.2 语句语句(b)图描述图描述图图4-3 例例4.1的流程图和图描述的流程图和图描述(a)流程图描述流程图描述 4.2 语句语句 ()1;110;()=14)/*当满足条件时结束当满足条件时结束*/;/*计算通项并进行累加计算通项并进行累加*/2;/*i值加值加2得到下一个奇数得到下一个奇数*/;/*相邻项符号取反相邻项符号取反*/;/*求公式中的某一项求公式中的某一项*/4*;(8.6fn);/*输出的值输出的值*/程序运行结果:程序运行结果:3.1413974.2 语句语句(a)流程图描述流程图描述(b)图描述图描述 例例 4.2 从键盘上连续输入字符,直到输入从键盘上连续输入

    9、字符,直到输入“回车回车”符为止,统计符为止,统计 输入的字输入的字符中数字字符的个数。符中数字字符的个数。4.2 语句语句 ();0;(n);()n)/*按回车键时结束按回车键时结束*/(=0=9)/*只对数字字符的个数进行统计只对数字字符的个数进行统计*/();/*输出数字字符输出数字字符*/1;/*对数字字符的个数进行累加统计对数字字符的个数进行累加统计*/(n);/*输出数字字符的个数输出数字字符的个数*/程序运行结果:程序运行结果:5667 566744.2 语句语句4.3 循环 4.3 循环循环 用来实现用来实现“直到型直到型”循环,其一般形式为:循环,其一般形式为:循环体语句循环

    10、体语句 (循环条件表达式循环条件表达式);执行过程是,先执行循环体语句,然后对循环条件表达式执行过程是,先执行循环体语句,然后对循环条件表达式进行计算,若其值为真(非进行计算,若其值为真(非0),则重复上述过程,直到循环),则重复上述过程,直到循环条件表达式的值为假(条件表达式的值为假(0)时,循环结束,程序控制转至该结)时,循环结束,程序控制转至该结构的下一条语句。其执行过程如图构的下一条语句。其执行过程如图4-5所示。所示。使用使用语句时,应注意以下几个问题:语句时,应注意以下几个问题:当循环体是一组语句时,则必须用花括号括起来,组当循环体是一组语句时,则必须用花括号括起来,组 成复合语句

    11、。成复合语句。循环体内一定要有使表达式的值变为循环体内一定要有使表达式的值变为0(假)的操作,(假)的操作,否则循环将无限进行。否则循环将无限进行。循环是先执行,后判断,因此循环体至少执循环是先执行,后判断,因此循环体至少执 行一次。行一次。和都是关键字,配合起来使用,和都是关键字,配合起来使用,()后面的后面的 “;”不可缺少。不可缺少。4.3 循环循环 例例4.3 用用循环编写计算循环编写计算1+2+3+100的程序。的程序。(a)流程图描述流程图描述(b)图描述图描述4.3 循环循环 ()01;/*开始执行循环开始执行循环*/;/*计算累加和计算累加和*/;/*i自加自加1*/(i=10

    12、0);/*如果如果i=100,则循环继续执行,则循环继续执行*/(n);/*输出累加和输出累加和*/程序运行结果:程序运行结果:5050例例4.3 用用循环编写计算循环编写计算1+2+3+100的程序。的程序。4.3 循环循环 例例4.4 输入若干名学生的某门课程的成绩,以负输入若干名学生的某门课程的成绩,以负数作为结束输入的标志,计算该门课程的平均数作为结束输入的标志,计算该门课程的平均成绩。成绩。首先输入一个成绩,若输入负数,直接结首先输入一个成绩,若输入负数,直接结束;否则使用循环结构计算总成绩,同时统计束;否则使用循环结构计算总成绩,同时统计学生人数学生人数1,最后计算平均成绩。,最后

    13、计算平均成绩。4.3 循环循环 ()0;0;(:n);();(=0);/*若输入负数,则结束循环若输入负数,则结束循环*/;/*计算平均成绩计算平均成绩*/(6.2fn);/*输出平均成绩输出平均成绩*/程序运行结果:程序运行结果::80 67-1 73.504.3 循环循环 4.4 循环 C 语言的语言的 循环使用最为灵活,功能很强循环使用最为灵活,功能很强。不仅可以用于计数型循环,而且可以用于。不仅可以用于计数型循环,而且可以用于条件型循环。完全可以代替条件型循环。完全可以代替 和和 循环。循环。4.4 循环循环 循环语句的一般形式为:循环语句的一般形式为:(表达式表达式1;表达式;表达式

    14、2;表达式;表达式3)循环体语句循环体语句 其中,是其中,是C语言的关键字,其后圆括号通常有语言的关键字,其后圆括号通常有3个表达式。表达式之间用分号隔开,表达式可以是个表达式。表达式之间用分号隔开,表达式可以是C语言中任何合法的表达式。表达式语言中任何合法的表达式。表达式1给循环变量赋给循环变量赋初值;表达式初值;表达式2是循环条件;表达式是循环条件;表达式3修改循环变量修改循环变量值。后面的语句为循环体。循环体多于一条语句时值。后面的语句为循环体。循环体多于一条语句时,要用复合语句表示。,要用复合语句表示。循环语句的作用:循环语句的作用:首先求解表达式首先求解表达式1的值,然后求解表达的值

    15、,然后求解表达式式2的值,若表达式的值非的值,若表达式的值非0(真)时,就执行循环体,执行一(真)时,就执行循环体,执行一次循环体后求解表达式次循环体后求解表达式3的值的值,再求解表达式再求解表达式2的值,若表达式的值,若表达式2仍不为仍不为0再执行循环体再执行循环体,再求解表达式再求解表达式3的值。如此反复直到表达的值。如此反复直到表达式式2的值为的值为0时时,整个循环结束。其执行过程如图所示。整个循环结束。其执行过程如图所示。4.4 循环循环 语句最简单的应用形式,也就是最易理语句最简单的应用形式,也就是最易理解的形式:解的形式:(循环变量赋初值;循环条件;循环变量循环变量赋初值;循环条件

    16、;循环变量增值增值)循环体语句循环体语句 4.4 循环循环 执行执行执行执行for循环之后的语句循环之后的语句执行执行执行表达式执行表达式1循环初始条件循环初始条件循环控制条件循环控制条件循环体循环体例例4.5 用循环编写计算用循环编写计算1+2+3+100的程序。的程序。4.4 循环循环 ()0;/*定义整型变量并对赋初值定义整型变量并对赋初值*/(1=100);/*通过循环对通过循环对i进行累加进行累加*/(“n”);/*输出累加和输出累加和*/4.4 循环循环 使用使用 循环时,循环时,语句中的表达式可以部分或全部省略,但语句中的表达式可以部分或全部省略,但两个两个“;”不可省略。不可省

    17、略。省略表达式省略表达式1,这时没有了给循环变量赋初值的操作,则应,这时没有了给循环变量赋初值的操作,则应 该在语句之前给循环变量赋初值。该在语句之前给循环变量赋初值。例如:例如:1;/*对循环变量对循环变量i赋初值赋初值*/(=100)/*省略了表达式省略了表达式1*/;省略表达式省略表达式2,相当于缺少条件判断,循环将无限进行,因,相当于缺少条件判断,循环将无限进行,因 此如果缺少表达式此如果缺少表达式2,可以认为表达式,可以认为表达式2始终为真。始终为真。4.4 循环循环 省略表达式省略表达式3,则可以把循环变量的修改部分放到循环体,则可以把循环变量的修改部分放到循环体 中进行。中进行。

    18、例如:例如:(1=100;)/*省略了表达式省略了表达式3*/;/*在循环体内改变循环变量在循环体内改变循环变量i的值的值*/省略表达式省略表达式1和表达式和表达式3,相当于在循环中只有表达式,相当于在循环中只有表达式2,即只给出循环结束的条件。这时可以采用上述和中的即只给出循环结束的条件。这时可以采用上述和中的 方法,保证循环正常结束。方法,保证循环正常结束。三个表达式全部省略,三个表达式全部省略,(;)相当于相当于(1)。4.4 循环循环 例例4.6 用循环编写计算用循环编写计算n!的程序。的程序。由于是个连乘的重复过程,每次循环完成一次乘法,共循由于是个连乘的重复过程,每次循环完成一次乘

    19、法,共循环次。在前面我们对计算累加和采用了环次。在前面我们对计算累加和采用了“第第i项项”的循环算式,的循环算式,类似对于连乘可以采用类似对于连乘可以采用“*第第i项项”的循环算式,其中第的循环算式,其中第i项就是项就是循环变量循环变量i。4.4 循环循环 ()1;/*定义整型变量定义整型变量,并对阶乘并对阶乘t赋初值赋初值1*/(n:);/*输出提示信息输出提示信息*/();/*从键盘输入从键盘输入n的值的值*/(1)*i;/*循环重复循环重复n次次,计算计算n!*/(n);/*输出输出n的阶乘的阶乘*/程序运行结果:程序运行结果:n:5 1204.4 循环循环 例例4.74.4 循环循环

    20、()i;();/*将输入的第一个学生的成绩赋给将输入的第一个学生的成绩赋给*/;/*将输入的第一个学生的成绩赋给将输入的第一个学生的成绩赋给*/(2)/*输入的成绩大于输入的成绩大于,将输入的成绩值赋给将输入的成绩值赋给*/;()/*输入的成绩小于输入的成绩小于,则将输入的成绩值赋给则将输入的成绩值赋给*/;(6.2f 6.2fn);程序运行结果:程序运行结果:75 89 66 48 98 100 79 85 90 68 100.00 48.004.4 循环循环 4.5 语句和语句 为了使循环控制更加灵活,为了使循环控制更加灵活,C 语言允许语言允许在特定条件成立时,使用在特定条件成立时,使用

    21、 语句强行结束循语句强行结束循环,或使用环,或使用 语句跳过循环体其余语句,转语句跳过循环体其余语句,转向循环条件的判定语句。向循环条件的判定语句。4.5 语句和语句语句和语句 4.5.1 语句语句 语句的一般形式为:语句的一般形式为:;语句有两个作用:用于语句有两个作用:用于 语句时,退出语句时,退出 语语句,程序转至句,程序转至 语句下面的语句;用于循环语句语句下面的语句;用于循环语句时,退出包含它的循环体,程序转至循环体下时,退出包含它的循环体,程序转至循环体下面的语句。面的语句。例例4.8 找出在找出在100以内的自然数中,能被以内的自然数中,能被9整除的第一个数。整除的第一个数。4.

    22、5 语句和语句语句和语句 ();(n:);();(=100)(90)/*判别判别i能否被能否被9整除整除*/(.n);/*i能被能被9整除,则输出整除,则输出i的值的值*/;/*提前退出循环提前退出循环*/程序运行结果:程序运行结果:n:1 9.n:65 72.4.5 语句和语句语句和语句 4.5.2 语句语句 语句的一般形式为:语句的一般形式为:;语句作用是:结束本次循环,跳过循环语句作用是:结束本次循环,跳过循环体中尚未执行的语句,接着进行下一次是否体中尚未执行的语句,接着进行下一次是否执行循环的判断。在和执行循环的判断。在和语句中,语句把程语句中,语句把程序控制转到后面的表达式处,在语句

    23、中,语序控制转到后面的表达式处,在语句中,语句把程序控制转到表达式句把程序控制转到表达式3处。处。4.5 语句和语句语句和语句 例例4.9 找出在找出在100以内的自然数中,能被以内的自然数中,能被9整除的所有数。整除的所有数。4.5 语句和语句语句和语句 ();/*定义整型变量定义整型变量*/(n:);/*输出提示信息输出提示信息*/();/*从键盘输入从键盘输入n的值的值*/(:);(=100)(90)/*判别判别i能否被能否被9整除整除*/(%4d);/*i能被能被9整除,则输出整除,则输出i的值的值*/;/*结束本次循环结束本次循环,转至处转至处*/程序运行结果:程序运行结果:n:65

    24、 :728190994.5 语句和语句语句和语句 例例4.10 分析下面程序的执行结果。分析下面程序的执行结果。()1;(15)/*若若b10,则结束整个循环则结束整个循环*/;(21)/*若若2=1,则则3并结束本次循环并结束本次循环*/3;/*转至处转至处*/;程序运行结果:程序运行结果:1,12,43,34,64.5 语句和语句语句和语句 注意注意:语句和语句和 语句的区别:语句的区别:语句只结束本次循环,语句只结束本次循环,而不是终止整个循环的执行;而不是终止整个循环的执行;语句则是结束循环语句则是结束循环,不再进行条件判断。,不再进行条件判断。4.5 语句和语句语句和语句 4.6 多

    25、重循环 一个循环体内又包含另一个完整的循环结一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。、构,称为循环的嵌套。、和三种循环语句可和三种循环语句可以互相嵌套,内嵌的循环体内还可以嵌套循环以互相嵌套,内嵌的循环体内还可以嵌套循环,这就是多重循环。,这就是多重循环。4.6 多重循环多重循环例例4.11 以下面形式输出九九乘法表。以下面形式输出九九乘法表。11=121=2 22=431=3 32=6 33=941=4 42=8 43=12 44=1651=5 52=10 53=15 55=2571=7 72=14 73=21 77=4981=8 82=16 83=24 88=6491=9

    26、92=18 93=27 99=81分析:求积可以用两层循环结构实现:分析:求积可以用两层循环结构实现:(1=9)/*i表示被乘数表示被乘数*/(1)/*j表示乘数表示乘数*/*j;第一个语句,称为外循环,第一个语句,称为外循环,i表示被乘数。第二个语句,表示被乘数。第二个语句,称为内循环,称为内循环,j表示乘数。嵌套重复循环结构总是先完整地执表示乘数。嵌套重复循环结构总是先完整地执行内循环一次,外循环再执行一次。行内循环一次,外循环再执行一次。4.6 多重循环多重循环据上述分析,算法可以用如图所示的流程图和图描述。据上述分析,算法可以用如图所示的流程图和图描述。4.6 多重循环多重循环 ();

    27、/*定义整型变量定义整型变量*/(1=9)/*外循环用于控制行数外循环用于控制行数*/(1)/*内循环用于控制列数内循环用于控制列数*/*j;/*计算计算i*j,并赋值给变量,并赋值给变量t*/(%3d*2d);/*输出输出t,即,即i*j的值的值*/(n);/*输出输出1行后换行行后换行*/4.6 多重循环多重循环例例4.12 用嵌套循环计算用嵌套循环计算 的值。的值。!3!2!1n4.6 多重循环多重循环 ();0;(n:);();(1)/*外层循环重复外层循环重复n次,求累加和次,求累加和*/1;/*置置t的初值为的初值为1,以保证每次求阶乘都从,以保证每次求阶乘都从1开始开始连乘连乘*

    28、/(1)/*内层循环重复内层循环重复i次,计算次,计算!*/*j;/*把把i!累加到中累加到中*/(n);程序运行结果:程序运行结果:n:4 334.6 多重循环多重循环例例4.13 输出一个任意行的等腰三角形图形。输出一个任意行的等腰三角形图形。*分析:分析:把三角形顶点放在屏幕第把三角形顶点放在屏幕第40列的位置,每行的输出开始列的位置,每行的输出开始位置比上一行提前一列,每行输出星号的个数是行数的位置比上一行提前一列,每行输出星号的个数是行数的2倍减倍减去去1。输入。输入n的值来确定所需要的行数。程序的外循环控制输的值来确定所需要的行数。程序的外循环控制输出的行数,内循环是两个并列的循环

    29、,前面一个循环输出每出的行数,内循环是两个并列的循环,前面一个循环输出每行前面的空格,后面一个循环输出该行的星号,星号输出结行前面的空格,后面一个循环输出该行的星号,星号输出结束后换行,接着输出下一行。束后换行,接着输出下一行。4.6 多重循环多重循环 ();();();/*从键盘上输入等腰三角形所占的行数从键盘上输入等腰三角形所占的行数*/(1;k;)/*此循环用于控制行数此循环用于控制行数*/(140)/*此循环用于控制星号前的空格此循环用于控制星号前的空格*/();(1=2*1)/*此循环用于控制一行内打印星号的个数此循环用于控制一行内打印星号的个数*/(*);(n);/*输出一行后换行

    30、输出一行后换行*/*4.6 多重循环多重循环4.7 程程 序序 举举 例例4.7 程序举例程序举例 例例4.14 编写程序求斐波纳契()数列的前编写程序求斐波纳契()数列的前20项,要求每行项,要求每行输出输出5个斐波纳契数。个斐波纳契数。斐波纳契数列源自一个有趣的问题:一对小兔,一个月后斐波纳契数列源自一个有趣的问题:一对小兔,一个月后长成中兔,第长成中兔,第3个月长成大兔,长成大兔以后每个月生一对小个月长成大兔,长成大兔以后每个月生一对小兔。问第兔。问第20个月有多少对兔子?个月有多少对兔子?斐波纳契数列的规律是:每个数等于前两个数之和。其可斐波纳契数列的规律是:每个数等于前两个数之和。其

    31、可以用数学上的递推公式来表示:以用数学上的递推公式来表示:2211121nffnnfnnn4.7 程序举例程序举例 ()f123;k;f1=12=1;/*斐波纳契数列的头两个数斐波纳契数列的头两个数*/(%101012);/*输出斐波纳契数列的头两个数输出斐波纳契数列的头两个数*/(3=20)/*循环循环18次求斐波纳契数列的后次求斐波纳契数列的后18项项*/f312;/*新的斐波纳契数的一个数等于前两个数之和新的斐波纳契数的一个数等于前两个数之和*/(%103);f12;/*迭代,用新的数覆盖旧的数迭代,用新的数覆盖旧的数*/f23;(50)(n);/*每输出每输出5个斐波纳契数换行个斐波纳

    32、契数换行*/4.7 程序举例程序举例程序运行结果:程序运行结果:1 1 2 3 58 13 21 34 5589 144 233 377 610987 1597 2584 4181 67654.7 程序举例程序举例例例4.15 利用下面级数求正弦函数的值(要求算到最后一项的利用下面级数求正弦函数的值(要求算到最后一项的绝对值小于绝对值小于 为止)。为止)。这是一个多项式累加和,每一项的符号和分子、分母都这是一个多项式累加和,每一项的符号和分子、分母都是有规律性地变化:符号依此作正负变化;分子是是有规律性地变化:符号依此作正负变化;分子是x的奇数次的奇数次幂;分母则是从幂;分母则是从1开始的奇数

    33、阶乘。可以用循环结构实现,当开始的奇数阶乘。可以用循环结构实现,当循环计算到某一项循环计算到某一项 时循环结束,输出时循环结束,输出(x)的值。的值。!9!7!5!3sin9753xxxxxx-610-6104.7 程序举例程序举例4.7 程序举例程序举例 3.14159()1;1;();/*输出提示信息输出提示信息*/(1);/*从键盘输入角度从键盘输入角度x1的值的值*/1*180;/*将角度将角度x1换算成弧度换算成弧度*/;/*把级数的第一项把级数的第一项x作为累加和的初作为累加和的初值值*/;/*将将x赋值给赋值给*/4.7 程序举例程序举例 (3()=162)/*当前项当前项=,执

    34、行循环执行循环*/1;1;(1)*j;/*通过循环计算当前项的阶乘通过循环计算当前项的阶乘t*/*x;/*通过循环计算当前项的分子通过循环计算当前项的分子*/;/*将值的符号取反将值的符号取反*/*;/*计算新的当前项值计算新的当前项值*/;/*对进行累加对进行累加*/(%.2f)n1);程序运行结果:程序运行结果:2(2.0)=0.034899-6104.7 程序举例程序举例例例4.16 从键盘上输入一个大于从键盘上输入一个大于2的整数,判断的整数,判断m是否为素数。是否为素数。所谓素数是指除了所谓素数是指除了1和它本身以外,再不能被任何整数整和它本身以外,再不能被任何整数整除的数。根据这一

    35、定义,判断一个整数是否素数,只需把被除的数。根据这一定义,判断一个整数是否素数,只需把被2到到m-1之间的每一个整数去除,如果都不能被整除,则之间的每一个整数去除,如果都不能被整除,则m就是就是一个素数。一个素数。例如例如:判断判断19是否素数,将是否素数,将19被被2,3,18除,都不能整除,都不能整除除19,则,则19就是一个素数。就是一个素数。实际上,除数只要为实际上,除数只要为2 的全部整数即可。让的全部整数即可。让m被被2除,如果除,如果m能被能被2之中任何一个整数整除,则说明之中任何一个整数整除,则说明m不是素数不是素数,否则,否则m一定是素数。一定是素数。mm4.7 程序举例程序

    36、举例4.7 程序举例程序举例();1;/*将素数标志设置为将素数标志设置为1*/(a:);/*输出提示信息输出提示信息*/();/*从键盘输入变量从键盘输入变量m的值的值*/(m=2);/*若若m=2,则结束循环,则结束循环*/()(m);/*将将(m)取整后赋值给变量取整后赋值给变量k*/(2)(0)/*若若m不是素数,则将素数标志置为不是素数,则将素数标志置为0并结束循环并结束循环*/0;()/*若素数标志若素数标志1,则输出该数是素数,则输出该数是素数*/(a .n);/*若素数标志若素数标志0,则输出该数不是素数,则输出该数不是素数*/(a .n);4.7 程序举例程序举例程序运行结果

    37、:程序运行结果:a:35 35 a .a:19 19 a .4.7 程序举例程序举例 例例4.17 把一元钱换成把一元钱换成5分,分,2分,分,1分的零钱,统计共有多少种换法。分的零钱,统计共有多少种换法。用用a、b、c分别表示换的分别表示换的5分、分、2分、分、1分的张数,则分的张数,则a、b、c的值应该的值应该满足:满足:5*2*100。4.7 程序举例程序举例 ()0;(0=20)/*本循环表示本循环表示5分的有多少种换法分的有多少种换法*/(0=50)/*本循环表示本循环表示2分的有多少种换法分的有多少种换法*/(0=100)/*本循环表示本循环表示1分的有多少种换法分的有多少种换法*

    38、/(5*2*100);/*经过三重循环后,统计出有多少种换法经过三重循环后,统计出有多少种换法*/(n);/*输出结果输出结果*/程序运行结果:程序运行结果:5414.7 程序举例程序举例例例4.18 计算用户输入的两个正整数之间的所有整数中计算用户输入的两个正整数之间的所有整数中0,1,2,9数码的个数。例如,数码的个数。例如,101104之间总共包含四个整数之间总共包含四个整数101,102,103,104,其中,其中0的个数为的个数为4,1的个数为的个数为5,2、3、4的的个数为个数为1,其余数码没有出现都为,其余数码没有出现都为0。要计算某整数中包含的各个数码的个数,必须对该整数进要计

    39、算某整数中包含的各个数码的个数,必须对该整数进行分解,求得所包含的各个数码,其方法可以通过每次除以行分解,求得所包含的各个数码,其方法可以通过每次除以10取余数得到,然后再对商进行同样的处理,直到商为取余数得到,然后再对商进行同样的处理,直到商为0时为止。时为止。对所得到的数码进行计数,可采用语句来实现。对所得到的数码进行计数,可采用语句来实现。4.7 程序举例程序举例 ()12;0=01=02=03=04=0;5=06=07=08=09=0;/*循环用于从键盘上输入两个正整数循环用于从键盘上输入两个正整数*/(:);(12);(1022);/*若若10或或22,则退出循环则退出循环*/(12

    40、)/*循环用于控制整数在循环用于控制整数在12之间之间*/;10;/*s对对10取余数后赋值给取余数后赋值给r*/4.7 程序举例程序举例 (r)/*用用r匹配后的语句匹配后的语句*/0:0;1:1;2:2;3:3;4:4;5:5;6:6;7:7;8:8;9:9;10;/*s对对10整除后赋值给整除后赋值给s*/(0);/*若若0,则结束循环,则结束循环*/(0 5d 1 5d 2 5d 3 5d 4 5dn01234);(5 5d 6 5d 7 5d 8 5d 9 5dn56789);4.7 程序举例程序举例程序运行结果:程序运行结果::101 104 0 4 1 5 2 1 3 1 4 1

    41、5 0 6 0 7 0 8 0 9 04.7 程序举例程序举例4.8 三种循环语句的比较三种循环语句的比较 C语言提供的、语言提供的、以及三种循环结构各有其特点,应根据不以及三种循环结构各有其特点,应根据不同的情况选择不同的循环,以便更好地实现程序的功能。现对三同的情况选择不同的循环,以便更好地实现程序的功能。现对三种循环结构加以比较如下。种循环结构加以比较如下。1三种循环都可以用来处理同一个重复的问题,一般情况三种循环都可以用来处理同一个重复的问题,一般情况可以互相代替。可以互相代替。2和和循环,都在后面指定循环条件,在循环体中还应包循环,都在后面指定循环条件,在循环体中还应包含修改循环条件

    42、,使循环趋于结束的语句如含修改循环条件,使循环趋于结束的语句如)。而循环可以在表)。而循环可以在表达式达式3中包含使循环趋于结束的操作,甚至可以将循环体中的操中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到表达式作全部放到表达式3中。因此,循环的功能更强,凡用循环能完中。因此,循环的功能更强,凡用循环能完成的成的,用循环都能实现。用循环都能实现。3 3在和在和循环中,循环变量赋初值的操放在循环语句之循环中,循环变量赋初值的操放在循环语句之前。而循环可以在表达式前。而循环可以在表达式1 1中实现循环变中实现循环变 量赋初值,也量赋初值,也可 以 省 略 表 达 式可 以 省 略 表

    43、达 式 1 1,在 循 环 语 句 之 前 完 成,在 循 环 语 句 之 前 完 成4 4三种循环都可以用语句结束循环,用语句开始下一次三种循环都可以用语句结束循环,用语句开始下一次循环。循环。5 5三种循环之间的不同之处是、循环是先判断表达式的三种循环之间的不同之处是、循环是先判断表达式的值,后执行循环体语句,而值,后执行循环体语句,而循环则是先执行一次循环体语循环则是先执行一次循环体语句,后判断表达式的值。句,后判断表达式的值。4.8 三种循环语句的比较三种循环语句的比较 本 章 小 结 C语言提供了重复操作的、语言提供了重复操作的、以及三种循环语句,这三以及三种循环语句,这三种语句一般

    44、情况下可以互相代替。要重点掌握这种语句一般情况下可以互相代替。要重点掌握这3种循环语句种循环语句的一般形式,了解它们开始和终止的条件,尤其要注意语句的一般形式,了解它们开始和终止的条件,尤其要注意语句和和语句的异同。注意多重循环时循环的嵌套,内外循环必语句的异同。注意多重循环时循环的嵌套,内外循环必须层次分明。注意和语句的区别。须层次分明。注意和语句的区别。人有了知识,就会具备各种分析能力,人有了知识,就会具备各种分析能力,明辨是非的能力。明辨是非的能力。所以我们要勤恳读书,广泛阅读,所以我们要勤恳读书,广泛阅读,古人说古人说“书中自有黄金屋。书中自有黄金屋。”通过阅读科技书籍,我们能丰富知识,通过阅读科技书籍,我们能丰富知识,培养逻辑思维能力;培养逻辑思维能力;通过阅读文学作品,我们能提高文学鉴赏水平,通过阅读文学作品,我们能提高文学鉴赏水平,培养文学情趣;培养文学情趣;通过阅读报刊,我们能增长见识,扩大自己的知识面。通过阅读报刊,我们能增长见识,扩大自己的知识面。有许多书籍还能培养我们的道德情操,有许多书籍还能培养我们的道德情操,给我们巨大的精神力量,给我们巨大的精神力量,鼓舞我们前进。鼓舞我们前进。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第4章-循环结构程序设计素材课件.ppt
    链接地址:https://www.163wenku.com/p-4608617.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库