A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王明明 中级黑马   /  2012-6-13 15:17  /  2328 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

用程序的方式显示出下列结果。

1*1=1
1*2=2   2*2=4
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. class Demo
  2. {
  3.         public static void main(String[] args)
  4.         {       
  5.                 int i=1;
  6.                 int a=1;
  7.                 for(i=1;i<=5;)
  8.                 {
  9.                         if(i!=a & a<=5)
  10.                         {
  11.                                 System.out.print(i+"*"+a+"="+i*a+"   ");
  12.                                 i++;               
  13.                        
  14.                         }
  15.                         else if(i==a)
  16.                         {
  17.                                 System.out.println(i+"*"+a+"="+i*a+"   ");
  18.                                 a++;       
  19.                                 i=1;                                                       
  20.                         }
  21.                 }
  22.         }
  23. }
复制代码
这个是我想出来的 想请教 还有没有别的更直观的办法...

评分

参与人数 1技术分 +1 收起 理由
黄奕豪 + 1 乐于追求创新~~赞一个

查看全部评分

8 个回复

倒序浏览
双层循环

public class biao {
        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+"="+(i*j)+"  ");
                        }
                        System.out.println();
                }
        }
}

评分

参与人数 1技术分 +1 收起 理由
黄奕豪 + 1 赞一个!

查看全部评分

回复 使用道具 举报
张頔 发表于 2012-6-13 15:24
双层循环

public class biao {

你这么 输出 是
1*1=1
1*2=2
1*3=3
...
是这么显示的
并不是
1*1=1  
1*2=2  2*2=4
这样
回复 使用道具 举报
王明明 发表于 2012-6-13 15:27
你这么 输出 是
1*1=1
1*2=2

= =  你确定你把我的代码运行了?
回复 使用道具 举报
张頔 发表于 2012-6-13 15:24
双层循环

public class biao {

我明白了 谢谢
回复 使用道具 举报
package cn.itcast;
public class MultiplicationTable {
        public static void main(String[] args)
        {
                for(int b=1;b<10;b++)
                {
                        for(int a=1;a<=b;a++)
                        {
                                System.out.print(a+"*"+b+"="+a*b+"\t");
                        }
                        System.out.println();

                }
        }

}
回复 使用道具 举报
嗯确实是双层循环比单层循环省代码


public class test {
        public static void main(String[] args)
        {
                for(int m=1;m<5;m++)
                {
                        for(int n=1;n<=m;n++)
                        {
                                System.out.print(n+"*"+m+"="+n*m+"\t");//使用制表符使数字对齐  比空格看着舒服
                        }
                        System.out.println();

                }
        }

}
回复 使用道具 举报
  1. public class Demo {

  2.         public static void main(String[] args) {
  3.                 int i=1,k=1;
  4.                 while(i<=9)
  5.                 {
  6.                         if(k<=i)
  7.                         {System.out.print(i+"*"+k+"="+i*k+"\t");k++;}
  8.                         else
  9.                         {
  10.                                 k=1;
  11.                                 i++;
  12.                                 System.out.println();
  13.                         }
  14.                 }
  15.         }
  16. }
复制代码
回复 使用道具 举报
唐增友 发表于 2012-6-13 23:10

这个也不错
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马