西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE
90 new、null、package、private、protected、public、 return、short、static、super、switch、synchronized、 this、throw、throws、true、try、void、while (3) 数据类型 (4) 变量的作用域和生命周期 a) 变量 的作用域指变量起作用的范围,说明变量在什么部分可以被访问; b) 变量的生命周期是指变量在内存中存在的周期,即什么时候分配空间,什么时候销毁; (5) 运算符和表达式 a) 算术运算符 b) 关系运算符 c) 逻辑运算符 d) 条件运算符 e) 赋值运算符 (6) 选择结构 a) if语句 b) if?else语句 c) if?else if语句 d) switch?case语句 三、 学生实验(上机+老师指导) (1) 输入一个“男”或者“女”,对应输出“M”和“F”。 (2) 写程序,若星期一到星期五,则打印出“工作快乐”,若星期六、星期天则输出“周末更快乐”。 (3) 输入一个分数,输出对应的等级: 60以下 E 60-70 D 70-80 C 80-90 B 90 – 100 A (1) 输入三个数字,最后从小到大输出排序。 (2) 课后预习循环结构的几种语句以及数组的定义。 作 业 布 置 第5页 共51页
西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE
课 后 总 结 (1) 通过学生自己对出现问题的总结和老师的总结,80%以上的同学对常见问题的解决方法有了一个深刻的认识。 (2) 通过三个上机程序,加深了对循环结构的认识。但是依然有约20%的同学对if和switch的用法还不能掌握,需加强程序上机的编写。 第6页 共51页
西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE
教 案
编号:3
章节 教 学 目 的 教 学 重 点 教 学 难 点 时间 分配 Min 10 60 流程控制 — 循环语句 数组 (1) 掌握循环语句的使用。 (2) 掌握数组的声明以及运用。 (3) 培养学生主动性和积极性。 (4) 培养学生的逻辑思维能力。 (1) 循环语句。 (2) 数组、哈希表。 授课方式 讲授+上机 (1) 循环语句。 (2) 数组、哈希表。 教 学 过 程 一、 作业点评(学生阐述+老师总结) 方式:由3-5个同学来讲述上周作业的实现思路,最后由老师总结出现的一些问题。 (1) 类名不规范 (2) 运算符的运用 (3) 部分算法的不科学性 二、 抽查上周布置的课后作业,抽查1-3个同学来阐述循环结构的几种语句以及数组的声明。(学生阐述+老师讲授) (1) 循环语句 a) While int i=0; while(i++<3) System.out.println(i); b) Do……while语句 int i=1; do { System.out.println(i); }while(i++<3); c) For 语句 for(int i=1;i<=3;i++) System.out.println(i); (2) 流程控制语句 a) break:从switch语句、循环语句或标号标识的代码块中退出。以下while循环用于把1加到100: int a=1,result=0; one: while(true){ result+=a++; 第7页 共51页
西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE
110 if(a==101)break one; //终止循环 } System.out.println(result); //打印5050 b) continue:跳过本次循环,执行下一次循环,或执行标号标识的循环体。以下for循环用于对1到100之内的奇数求和: int result=0; for(int a=1;a<=100;a++){ if(a%2==0)continue; //如果a是偶数,就跳出本次循环,继续执行下次循环 else result+=a; } System.out.println(result); //打印2500 (3) 讨论:判断下面程序执行了多少次? class Test { public static void main(String[] args){ int i=0; while(i<10){ if(i<10){ i++; continue; } if(i==5) { break; } } System.out.println(i); } } (4) Java中声明数组的几种方式 //仅声明数组的引用,但没有分配内存空间 float[] fAry; //声明数组的同时,根据指定的长度分配内存,但数组中没有值 char[] chAry = new char[10]; //声明数组并分配内存,同时将其初始化 int[] ary1 = new int[]{1, 2, 3, 4, 5}; //与前一种方式相同,仅仅只是语法相对简略 int[] ary2 = {1, 2, 3, 4, 5}; 三、 学生实验(上机) (1) 【练习题一】 编写Java程序,计算100~999之间的全部“水仙花数”的平均值。所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如:153=1^3+5^3+3^3,故153是水仙花数。 (2) 【练习题二】 编写一个Java程序,要求在控制台上打印出九九乘法表,效果应如下所示: 1*1=1, 1*2=2, 2*2=4, 第8页 共51页
西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE
1*3=3, 2*3=6, 3*3=9, 1*4=4, 2*4=8, 3*4=12, 4*4=16, 1*5=5, 2*5=10, 3*5=15, 4*5=20, 5*5=25, 1*6=6, 2*6=12, 3*6=18, 4*6=24, 5*6=30, 6*6=36, 1*7=7, 2*7=14, 3*7=21, 4*7=28, 5*7=35, 6*7=42, 7*7=49, 1*8=8, 2*8=16, 3*8=24, 4*8=32, 5*8=40, 6*8=48, 7*8=56, 8*8=64, 1*9=9, 2*9=18, 3*9=27, 4*9=36, 5*9=45, 6*9=54, 7*9=63, 8*9=72, 9*9=81, (3) 【练习三】 1.打印如下图型: * *** ***** *** * 2. * * * * * * * * * * * * 作 业 布 置 课 后 总 结 (1) 一个小球从100米处落下,每次弹起是原来的一半,问弹起第二十次落下后所经过的米数。 (1) 通过这三周的程序编写和讲解,发现50%的同学对选择结构和循环结构的熟练程序还不够,对一些算法的实现还存在很大的问题,逻辑思维能力较弱。因此接下来的1-2周,决定采用大量的例子程序进行上机练习,然后由老师以及学得比较好的同学进行辅导,为后面的面向对象编程的一些概念打下基础。
第9页 共51页