java编写九九乘法表(三种实现方法)
对于一般的九九乘法表,估计大多数java编程者都能够实现,但最近碰到的这个题目(见图1)确实让我纠结了两天。不过今天还是把它解决了,本人不才,编写了三种循环方法分别将它实现了,自认为代码还可以优化,绞尽脑汁,可也没想出来(如果哪位仁兄或者女学霸想出来了,记得第一时间给我留言,必将感激不尽),所以就暂时记录下来,供以后复习使用。
(图1)
- 解决方法一:(采用for循环)
//采用for循环分级、分步打印(拆分思想)
public class Test16_11 {
public static void main(String[] args){
for(int i=1;i<=9;i++){
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+j*i+"\t");
}
for(int k=2*(9-i);k>0;k--){
System.out.print(" \t");
}
for(int m=1;m<=i;m++){
System.out.print(i*m+"="+i+"*"+m+"#"+"\t");
}
System.out.println();
}
for(int i=9;i>0;i--){
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+j*i+"\t");
}
for(int k=2*(9-i);k>0;k--){
System.out.print(" \t");
}
for(int m=1;m<=i;m++){
System.out.print(m+"*"+i+"="+m*i+"\t");
}
System.out.println();
}
}
}
- 解决方法二:(采用while循环)
//采用while循环打印4个九九乘法表
public class Test16_13 {
public static void main(String[] args){
int i=1,x=9;
while(i<=9){
int j=1,k=2*(9-i),m=1;
while(j<=i){
System.out.print(j+"*"+i+"="+j*i+"\t");
j++;
}
while(k>0){
System.out.print(" \t");
k--;
}
while(m<=i){
System.out.print(m*i+"="+i+"*"+m+"#"+"\t");
m++;
}
i++;
System.out.println();
}
while(x>0){
int j=1,k=2*(9-x),m=1;
while(j<=x){
System.out.print(j+"*"+x+"="+j*x+"\t");
j++;
}
while(k>0){
System.out.print(" \t");
k--;
}
while(m<=x){
System.out.print(m+"*"+x+"="+m*x+"\t");
m++;
}
x--;
System.out.println();
}
}
}
- 解决方法三:(采用do-while循环)
//采用do while打印(九九乘法表4个)
public class Test16_12{
public static void main(String[] args){
int i=1,x=9;
do{
int j=1,k=2*(9-i),m=1;
do{
System.out.print(j+"*"+i+"="+j*i+"\t");
j++;
}while(j<=i);
do{
if(i==9){break;}
System.out.print(" \t");
k--;
}while(k>0);
do{
System.out.print(i*m+"="+i+"*"+m+"#"+"\t");
m++;
}while(m<=i);
i++;
System.out.println();
}while(i<=9);
do{
int j=1,k=2*(9-x),m=1;
do{
System.out.print(j+"*"+x+"="+j*x+"\t");
j++;
}while(j<=x);
do{
if(x==9){break;}
System.out.print(" \t");
k--;
}while(k>0);
do{
System.out.print(m+"*"+x+"="+m*x+"\t");
m++;
}while(m<=x);
x--;
System.out.println();
}while(x>0);
}
}
学习Java的同学注意了!!!
学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:543120397 我们一起学Java!