2.Java语言基础.ppt

执行for语句时,先计算表达式1(只计算一次,缺省时表示无初始内容),接着检查表达式2的值是true还是false,若为false,则不执行语句语句(循环体),退出循环;若为true,就执行给定的语句,再计算表达式3,然后,又检查表达式2的值,再根据值为true或为false决定是否执行循环体。 可以在for循环的表达式1中说明仅在循环中使用的变量,例如:    for(int i = 10;i = 0;) i--; 【例3.9】用for循环语句按10度的增量打印出一个从摄氏10~90度到华氏温度的转换表。 class TempConversion{ public static void main (String args[]){ int fahr,cels; System.out.println(摄氏温度 华氏温度); for(cels = 10;cels = 90;cels += 10){ fahr = cels * 9 / 5 + 32; System.out.println( + cels + + fahr); } } } 程序的运行结果如下: 摄氏温度 华氏温度 10 50 20 68 30 86 40 104 50 122 60 140 70 158 80 176 90 194 2.7.4 循环嵌套 循环嵌套是指在某个循环语句的循环体中又包含另一个循环语句,也称多重循环。外面的循环语句称为“外层循环”,外层循环的循环体中的循环称为“内存循环”。 设计循环嵌套结构时,要注意内存循环语句必须完整地包含在外层循环的循环体中,不得出现内外层循环体交叉的情况。Java语言中的三种循环语句都可以组成多重循环。 【例3.10】 求3~100之间的所有素数。 public class PrimeNumber{ public static void main(String args[]){ System.out.println( ** 3~100之间的所有素数 **); int n = 0; for(int i = 3;i 100;i += 2){ // 外层循环 int k = (int)Math.sqrt(i); boolean isPrime = true; for(int j = 2;j = k;j ++ ){ // 内层循环 if( i%j == 0 )isPrime = false; } if(isPrime){ System.out.printf(%4d,i); n ++; // 控制每行打印10个素数 if( n % 10 == 0 )System.out.println(); } } System.out.println(); } } 程序运行结果如下: ** 3~100之间的所有素数 ** 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 【例3.11】输出星号符号组成的菱形图案。 字符图案的程序设计有一定的规律,在本例中可将每行的输出内容分为空格、星号和回车换行三个部分来考虑。如果希望将图案输出在屏幕的左边,则各行星号前的空格数按行序分别为2、1、0、1、2;各行的星号个数按行序分别为1、3、5、3、1。可合适的构造循环变量的取值,使得程序设计比较简单。 class PrintStar{ public static void main(String args[]){ for(int i=-2;i=2;i++){ // 图案有5行,外循环5次 // 1: 内循环1,输出空格 for(int j=1;j=Math.abs(i);j++)System.out.print( ); // 2: 内循环2,输出星号 for(int j=1;j=(3-Math.abs(i))*2-1;j++) System.out.print(*); // 3: 输出回车换行 System.ou

文档评论(0)

1亿VIP精品文档

相关文档