在java中编写九九乘法表的程序,重要的是帮忙解释一下!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在java中编写九九乘法表的程序,重要的是帮忙解释一下!相关的知识,希望对你有一定的参考价值。
直接贴出代码,希望有帮助:
public class Test9X9public static void main(String[] args)
// 9*9乘法表有一个特点,每一层的算式数跟对应层数相等
// 而且每一层中,每一个算式都是n*1,最后一个算式都 是n*n
// 根据这个规律,可以得到下面的算法
// 9*9算法表共9层,下面定义算法层数
int level = 9;
for (int n = 1; n <= level; n++)
// 开始循环出9层的算式,第一层循环是用来循环出都有多少层。
for (int j = 1; j <= n; j++)
// 第二层循环是用来循环出每一层有几个算式。
// 因为每层的第一个算式都是n*1,最后一个算式都是n*n,因此这这里面设置j最小值为1,最大值为对应的层数n
// 打印输出算式,这里的"\\t"是java中的转义符,表示一个制表符(Tab键占位符)
// System.out.print表示打印输出,但不换行
System.out.print(n + "*" + j + "=" + (n * j) + "\\t");
// 该层的算式全部打印输出后,新起一行,准备输出下一层的算式
System.out.println();
输出结果:
1*1=1
2*1=22*2=4
3*1=33*2=63*3=9
4*1=44*2=84*3=124*4=16
5*1=55*2=105*3=155*4=205*5=25
6*1=66*2=126*3=186*4=246*5=306*6=36
7*1=77*2=147*3=217*4=287*5=357*6=427*7=49
8*1=88*2=168*3=248*4=328*5=408*6=488*7=568*8=64
9*1=99*2=189*3=279*4=369*5=459*6=549*7=639*8=729*9=81追问
能问一下,怎样输出十句一样的文字呢?
追答什么叫输出十句一样的文字?不太明白,你可以用文本编辑给出一个效果,看看是什么样的结果。
追问打印十遍同一句话的那种,也是循环语句!但是我不知道怎么写!
追答不知道是要的是不是这种效果的:
System.out.println("打印同一句话");
输出结果:
打印同一句话
打印同一句话
打印同一句话
打印同一句话
打印同一句话
打印同一句话
打印同一句话
打印同一句话
打印同一句话
打印同一句话
追问谢了,是的!
你能帮我编一个可以输出十层星三角的程序吗?麻烦您挂上详解!我刚学java
还在吗?
追答十层星三角是个什么样的?不好意思,我现在还没这个概念,你可以上个效果图,我看看。
追问*
***
*****
*******
*********
***********
我复制的,应该是中心对称的!
追答你看下这文档,里面有多种不同算法。
http://wenku.baidu.com/link?url=UJhosGouGxsR4GwaSqrGWMa99afnwLc8kG7zzZTJRLeYVsPEJ7La0D1v1HyTERBOaUYQWCuxGLObtCAAWj9kraUEFFI9pFDSk4kAb0ccamq
public static void main(String args[])
for(int i=1;i<10;i++)
int t=1;
for(int j=1;j<=i;j++)
System.out.print(j+"*"+i+"=");
t=i*j;
System.out.print(t);
System.out.print(";");
System.out.println();
追问
后面的输出语录都是什么意思啊!
追答主要是两个for循环,第一个控制每一行,内循环控制每一行输出情况;
追问特别是
System.out.print(j+"*"+i+"=");
t=i*j;
System.out.print(t);
引号里面的就直接输出,“+”是字符串连接符,
System。out.print(j+"*"+i+"=")就输出j*i=;这里i 和j数字;
不能直接让它等于t吗?
还有为什么输出;号啊?
我刚学java问题比较幼稚,多担待啊!
追答为了好看,不输出也行的;
追问我刚刚按照你的输了一遍,结果编译成功了,运行时出不来结果
这是怎么回事啊!
追答你保存文件的名字要跟你定义的类名要相同。。
追问我的文件名跟这个一致啊!就是我发的照片里面的最后,运行出现了问题!编译还是ok的!
追答你把你的程序发过来。。
追问成功了!我的main拼错了!就是那个最后输出语录为什么括号里面什么都没有啊?
追答那是换行,要不然输出乱七八糟的,要不你试试。。
追问对不起啊!我刚把满意答案给人家了!我还以为能给很多人呢!我刚接触这个软件!
太对不起了!
参考技术B 每次输出加个\t的转义字符,会更好一下,打出来的表更好看Java实验项目二——二维数组实现九九乘法表
Program:打印乘法口诀表
(1)编写一个方法,参数(二维数组),完成将二维数组中的数据按照行列显示的工作。
(2)编写一个测试方法,给出99乘法表,放入到二维数组中,调用(1)中的方法,显示乘法口诀表。
Description:main方法所在类在最后给出,代码如下:
1 /* 2 *Description:定义工具类,负责初始化二维数组和打印二维数组 3 * 4 * */ 5 6 package tools; 7 8 9 public class Operate { 10 11 //初始化二维数组 12 public static String[][] init() { 13 14 String[][] temp = new String[9][9]; 15 for( int i = 0; i < 9; i++ ) { 16 17 for( int j = 0; j < 9; j++ ) { 18 if( j <= i ) { //保存乘法表内容 19 temp[i][j] = (j + 1) + "*" + (i + 1) + "=" + ((i+1)*(j+1)) + " "; 20 } 21 else { 22 temp[i][j] = ""; //不需要的地方赋值为:"" 23 } 24 } 25 temp[i][i] += "\n"; //加回车 26 } 27 28 return temp; //返回二维数组 29 } 30 31 32 //打印数组元素 33 public static void printInfo(String[][] temp) { 34 35 for( int i = 0; i < temp.length; i++ ) { 36 37 for( int j = 0; j < temp[i].length; j++ ) { 38 System.out.print( temp[i][j] ); 39 } 40 } 41 } 42 43 }
1 /* 2 * Description:通过二维数组打印九九乘法表 3 * 4 * Written By:Cai 5 * 6 * Date Written; 7 * 8 * */ 9 10 package main; 11 12 import tools.Operate; 13 14 public class DemoTwo2 { 15 16 public static void main(String args[]) { 17 18 String[][] temp = Operate.init(); //初始化二维数组 19 Operate.printInfo(temp); //打印数组 20 21 } 22 }
以上是关于在java中编写九九乘法表的程序,重要的是帮忙解释一下!的主要内容,如果未能解决你的问题,请参考以下文章