Java的基础知识学习(四)
(1)凑硬币程序设计:
程序设计 33元的所有凑法(2)改进(1)的多重循环的繁杂:利用break跳出每层循环,结果满足要求,但是程序不简洁。
程序改进 一种凑法,四层循环,四个break(3)继续改进(1):直接在循环前设置标号,lable:
OUT:的设置,简洁了程序 简洁程序,效果相同(4)逻辑类型:true or false;逻辑类型变量:boolean,三种运算:!、&&、||;优先级:!>&&>||;单目运算优先级大于双目运算
所有类型的优先级(5)求和:注意double类型的设置
计算1+1/2+1/3+......1/n的和 printf 可设置输出结果,四舍五入(6)变化(5):f(n)=1-1/2+1/3-1/4+.......+1/n的算法设计。方法一:增加一个符号变量,每一次循环进行变号;方法二:与i的奇偶性有关
方法一 方法一算法的结果 方法二 与方法一结果一致,算法多种多样注意:在for循环三个表达式中是唯一可以使用逗号将表达式拼起来成为一个大表达式的地方。
for循环的特别之处(7)最大公约数:枚举法,计算次数多,不划算。
求任意两个数的最大公约数 结果(8)辗转相除法(欧几里德法):改进(7)如果b=0,计算结束,a就是最大公约数;否则,计算a除以b的余数,让a=b,而b等于那个余数;回到第一步。
辗转相除法,同时注意oa,ob的设置 结果(9)创建数组:数组里所有是同一个类型;创建之后大小不能再改变;从0开始编号。定义数组变量:<类型>[]<名字>=new<类型>[元素个数],注意:元素个数必须是整数;元素个数必须给出;元素个数可以是变量。
创建数组:numbers[0]------numbers[99](10)数组的元素:索引或下标,一定是从0开始的整数,最大到元素个数减1,但是编译器自己不检查,必须进行有效的下标,否则运行程序时会被终止。
定义数组个数为变量 10个数组元素求平均数(11)数组的可扩展性:防止访问的数组超过其数组元素个数,可以将其设置为for(i=0;i<grade.length;++i)类似的形式:数组名字.length
可扩展性(12)投票统计程序设计:
数组参与运算 结果注意:-1的循环结束条件,否则成为死循环,一直run。
网友评论