- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
练习 练习目的 体会和巩固循环语句、分支语句、特殊流控制语句、表达式的计算次序、逻辑运算符的用法; 练习题目 1. 编写程序,采用适当的循环和流控制语句实 现下述功能:打印输出0~200之间能被7整除 但不能被4整除的所有整数;要求每行显示6 个数据; * 递归 问题:求给定整数的阶乘,如何实现? 解决方案: 1. 采用循环结构2. 采用递归结构 * public int f(int n){ if(n == 1){ return 1; }else{ int k = f(n-1); return n*k; } } public int f(int n){ if(n == 1){ return 1; }else{ int k = f(n-1); return n*k; } } 使用递归 * public class Factorial{ public int f(int n){ if(n == 1){ return 1; }else{ int k = f(n-1); return n*k; } } public static void main(String args[]){ Factorial fact = new Factorial(); int result = fact.f(4); System.out.println(result); } } 递归基本思想和要素 递归方法解决问题的基本思想是“依此类推” 实现原理: 1. 先求得范围或规模缩小的同种性质问题的结果,然后再利用上一步已得到的结果经过简单操作处理求得问题的最后解答; 2. 重复前述的步骤,当相同性质的问题被简化到足够简单时,将可直接获得问题的答案,而不会无限重复下去。 递归要素: 递推公式 递归终止条件 * 练习 汉诺塔程序 1.将n-1个盘子从a搬到b,借助c完成 2.将第n个盘子从a搬到c 3.将第n-1个盘子从b搬到c,借助a * a b c 汉诺塔代码 public class TestHanNoTa{ private int times = 0; public void hannota(int n,char a,char b,char c){ //n:待搬运的盘子数 //a:源塔 b:辅助塔 c:目标塔 if(n==1){ times++; System.out.println(times+:\t+将盘1从+a+搬到+c); }else{ //如果n1,则分解成以下几步: //1.将n-1个盘子从a搬到b,借助c this.hannota(n-1,a,c,b); //2.将第n个盘子从a搬到c times++; System.out.println(times+:\t+将盘+n+从+a+搬到+c); //3.将n-1个盘子从b搬到c,借助a this.hannota(n-1,b,a,c); } } public static void main(String[] args){ TestHanNoTa tht = new TestHanNoTa(); tht.hannota(3,A,B,C); } } * 第四章 运算符、表达式和流程控制 * 本章目标 运算符 表达式 分支语句 循环语句 递归 运算符 算术运算符: +,―,*,/,%,++,―― 关系运算符: ,,=,=,==,!= 布尔逻辑运算符: !, , | , ^ , ,|| 位运算符: ,|,^,~ , ,, 赋值运算符: = 扩展赋值运算符: +=,―=,*=,/= 字符串连接运算符: + 条件运算符: ?: * 逻辑运算符 逻辑运算符功能 !-- 逻辑非 -- 逻辑与| -- 逻辑或 ^ -- 逻辑异或-- 短路与|| -- 短路或 逻辑运算符功能说明: * 使用逻辑运算符 * public class Test1{ public static void main(String args[]){ boolean a,b,c; a = true; b = false; c = a b; System.out.println(c); c = a | b; System.out.println(c); c = a ^ b; System.out.println(c); c = !a; System.out.println(c); c = a b; System.out.println(c); c = a || b; System.o
您可能关注的文档
- 《C++程序设计》学习笔记总结 - 第八章 文件操作.docx
- 《C++程序设计》学习笔记总结 - 第二章 面向对象的基本概念.docx
- 《C++程序设计》学习笔记总结 - 第九章 函数模板与类模板.docx
- 《C++程序设计》学习笔记总结 - 第六章 多态与虛函数.docx
- 《C++程序设计》学习笔记总结 - 第七章 输入输出流.docx
- 《C++程序设计》学习笔记总结 - 第三章 类和对象进阶.docx
- 《C++程序设计》学习笔记总结 - 第四章 运算符重载.docx
- 《C++程序设计》学习笔记总结 - 第五章 类的继承与派生.docx
- 《C++程序设计》学习笔记总结 - 第一章 C++语言简介.docx
- 《计机算网络原理》学习笔记总结 - 第八章 网络安全基础.docx
- java初级及高级讲解ppt - 5.数组.ppt
- java初级及高级讲解ppt - 6.包、继承、多态.ppt
- java初级及高级讲解ppt - 7.抽象类、接口.ppt
- java初级及高级讲解ppt - 9.精通常用的java类.ppt
- java初级及高级讲解ppt - 10.控制台应用程序设计.ppt
- java初级及高级讲解ppt - 11.集合类、泛型.ppt
- java初级及高级讲解ppt - 12.GUI程序设计.ppt
- java初级及高级讲解ppt - 13.swing基础.ppt
- java初级及高级讲解ppt - 14.javaIO编程.ppt
- java初级及高级讲解ppt - 15.线程.ppt
最近下载
- 2023年重庆第二外国语学校(二外)小升初试卷附详细答案.pdf VIP
- 2025年黑龙江省辅警招聘考试试题带解析附答案.docx
- 《真菌性鼻窦炎》课件:深入了解真菌性鼻窦炎的病因、症状及治疗方法.ppt VIP
- 3.5跨学科实践:探索厨房中的物态变化问题 人教版(2024)物理八年级上册.pptx VIP
- 21起典型火灾案例及消防安全知识专题培训(2025年).ppt
- 禁毒预防教育主题班会.ppt VIP
- 六国论理解性默写[共3页].doc VIP
- 超星尔雅学习通《高校实验室安全基础课(实验室准入教育)》章节测试含答案 .pdf
- 索尼彩监特丽珑trinitron_pvm14m2u维修电路图手册.pdf VIP
- 2024年十八项医疗核心制度(最新).docx VIP
文档评论(0)