废话篇
我们在初学Java的时间,遇到的第一个难点就是循环控制,我们知道代码在结构上分为顺序结构、分支结构、循环结构。今天我们就利用我们所学的这几种结构进行完全运用,学程序要有思想,思想是慢慢培养的,所以我们在编程过程中切勿纸上谈兵,一定要动手实践,大不了一错,我用于试错,才能快速成长为一个合格的程序员。
打印 9 * 9 乘法表格
嵌套for循环实现左下角打印
//左上角打印 9 * 9 乘法表格
for(int i = 1; i <= 9; i++) {//外层循环控制行,这里我们初始值i=1,即从第一行开始打印
for(int j = 1; j <= i; j++) { //内层循环控制列,每一行的每一列我们也是从1开始打印,直到j == i,我们再开始打印下一列
int k = i * j;//计算积
System.out.print(j + "*" + i + "=" + k + "\t");//设置打印样式 如 1 * 1 = 1
}
//每打印一行记得换行
System.out.println();
}
执行结果如下:
嵌套for循环实现左上角打印
//左下角打印 9 * 9 乘法表格
for (int i = 9; i > 0; --i) {//外层循环控制行,这里我们初始值i=9,即从第9行开始打印
for(int j = i; j > 0; --j) {//内层循环控制列,每一行的每一列我们也是从i开始打印
int k = j * i;//计算积
System.out.print(j + "*" + i + "=" + k + "\t");//设置打印样式 如 1 * 1 = 1
}
System.out.println();//每打印一行记得换行
}
执行结果如下:
嵌套for循环实现右上角打印
//右上角打印9*9乘法表格
for(int i = 9; i >= 1; i--){
for(int j = 1; j <= i; j++){
if(j == 1) { //判断每列出现的位置
for(int a = 9 - i; a > 0; a--) {
System.out.print("\t");
}
}
System.out.print(j+"*"+i+"="+j*i+"\t");
}
System.out.println();
}
执行结果如下:
嵌套for循环实现右下角打印
//右下角打印9*9乘法表格
for(int i = 1; i <= 9; i++){
for(int j = 1; j <= i; j++){
if(j == 1){
for(int a = 9-i; a > 0; a--){
System.out.print("\t");
}
}
System.out.print(j+"*"+i+"="+j * i+"\t");
}
System.out.println("");
}
执行结果如下:
使用while循环打印 9 * 9 乘法表格(一)
//使用while循环实现9*9乘法表格的正序打印
int ia = 1;
int ib = 1;
int ic = 0;
while (ia <= 9) {
ic = ia * ib;
System.out.print(ib + "*" + ia + "=" +ic + "\t");
if (ia == ib) {
ia++;
ib = 1; //重置ib的值,保证每次换行的时间ib都是从1开始
System.out.println();//换行
continue;//跳过当次循环,继续下一次循环
}
ib++;
}
//换行
System.out.println("");
执行结果如下:
使用while循环打印 9 * 9 乘法表格(二)
//使用while循环实现9*9乘法表的倒序打印
int i = 9;
int j = 1;
int k = 0;
while (i >= 1) {
k = i * j;
System.out.print(j + "*" + i + "=" +k + "\t");
if (i == j) {
i--;
j = 1;
System.out.println();
continue;
}
j++;
}
执行结果如下:
使用单个for循环实现 9 * 9 表格的打印
//使用单个for循环打印
for (int i = 1, j = 1; i <= 9; j++) { //i为行,j为列,总行数为9
System.out.print(i + "*" + j + "=" + (i*j) + "\t");
if(i == j){
i++;
j = 0; //将 j 重置于 0,保证每换一行后 j 从 1 开始
System.out.println();
}
}
执行结果如下:
总结
循环控制在整个Java循环结构里面是重中之重,但是同时也是难点,所以要想快速掌握不但要理解其执行流程和语法格式,我们还要把每一个小案例都理解透彻,编程最忌讳的就是只说不干,理解和实践不能单一执行,要结合。
1.for循环是在我们明确循环条件以及循环范围的时间使用。
**2.while循环是在我们只明确循环条件的时间使用。
3.嵌套for循环是在我们要实现xx行 xx列的时间使用。**