99乘法表(for循环嵌套)
计算乘法表
- 两个数相乘,外层循环代表被乘数,控制行数;内层代表乘数,控制列数。
- 循环嵌套,变量名不可以重复。
- 使用 break 语句让输出的乘法表更简洁。
- 使用 String 变量,做 String 的加法。
public class MultiTabble {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) { // 控制行 被乘数
String line = "";
for (int j = 1; j <= 9; j++) { // 控制列 乘数
line += i + "*" + j + "=" + i * j + "\t"; // 利用字符串的加法将结果连接起来
}
System.out.println(line);
}
}
}

我们发现运算结果,有大量的重复结果,例如1*2和2*1、1*3和3*1等等。
这是不符合乘法口诀表的摆放规则的。
那么这时我们就要想办法把重复的等式去掉。
通过观察,在 i * j 的形式下,只要去掉 j 大于 i 的等式即可满足要求。
如何实现呢?
利用 break 语句跳出循环的这一特性来实现:当发现 j > i 时,就会跳出当前一层的循环(也就是这里的关于 j 的内循环),到达外层循环(关于 i 的外循环)。
public class MultiTabble {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) { // 控制行 被乘数
String line = "";
for (int j = 1; j <= 9; j++) { // 控制列 乘数
if (j > i) {
break; // 利用break跳出循环的操作解决重复问题
}
line += i + "*" + j + "=" + i * j + "\t"; // 利用字符串的加法将结果连接起来
}
System.out.println(line);
}
}
}

除了上面的一种方法以外,还有一个更加简单的方法实现乘法表。
就是让内循环中的变量 j 只要小于等于外循环的 i 即可。
这样内循环就不会超过外循环的最大数值,
例如,i 的值为 5,j 的值就只能是1,2,3,4,5. 这就解决了等式重复的问题。
public class MultiTable2 {
public static void main(String[] args) {
for(int i = 1; i <= 9; i++) {
String line = "";
for( int j = 1; j <= i; j++) {
line += i + "*" + j + "=" + (i*j) + "\t";
}
System.out.println(line);
}
}
}

99乘法表(for循环嵌套)的更多相关文章
- python(7)- 小程序练习:循环语句for,while实现99乘法表
打印99乘法表 for 循环语句实现: for i in range(1,10): for j in range(1,10): print(j,"x",i,"=" ...
- For循环练习之99乘法表和转义字符
之前说了for循环的概念以及常用到的操作,那么我们接下来做几个巩固练习: 1.打印99乘法表: 99乘法表的形式: 1*1 = 1 1*2 = 2 2*2 = 4 1*3 = 3 2*3 = 6 3* ...
- python的while嵌套 99乘法表 三角形和正方形
python的99乘法表 num1=1 while num1<=9 : num2 = 1 while num2 <=num1 : print (str(num2)+"X" ...
- 使用for循环打印9×9乘法表
请使用for循环,倒序打印9×9乘法表. 打印结果如下图所示: 使用for循环打印9×9乘法表 #include <stdio.h> int main() { int i, j, resu ...
- Java流程控制:增强for循环,break&continue,打印99乘法表
增强for循环:java5引入了一种主要用于数组或集合的增强for循环for(声明语句:表达式){//代码句子} 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配.其作用域限定在循环语 ...
- 99乘法表 java for循环
public static void main(String[] args) { //0-100的奇数和偶数和 int jsum=0; int osum=0; for (int i = 0; i &l ...
- Python,for循环小例子--99乘法表
一.99乘法表 for i in range(1, 10): for j in range(1, i + 1): print('%sx%s=%s ' % (j, i, j * i), end='') ...
- 练习-99乘法表 token生成器 翻译小工具
一.99乘法表 1.1 技术点 记住: for 循环的使用,以及for的嵌套使用 range()的使用,掌握sep为负数的使用的使用. print() 函数的使用,默认的结尾的换行符 替换 end= ...
- python中用代码实现99乘法表
第一种:使用for遍历循环嵌套 ,): ,x+): print("%s*%s=%s" % (y,x,x*y),end=" ") print("&quo ...
- js实现99乘法表
实现99乘法表(输出到页面上) * document.write("<table border='1' bordercolor='blue'>"); //循环行 9 f ...
随机推荐
- ScrollView不设置contentSize属性依然也可以作为底层滚动View(使用masonry设置scrollView的contentSize)
第一步 //下层的scroolView self.baseScrollView = [[UIScrollView alloc] init]; self.baseScrollView.delegate ...
- Codeforces #617 (Div. 3)B. Food Buying
Mishka wants to buy some food in the nearby shop. Initially, he has ss burles on his card. Mishka ca ...
- js 原生url编码
参考:http://www.runoob.com/jsref/jsref-decodeuricomponent.html
- 学习不一样的Vue1:环境搭建
学习不一样的Vue1:环境搭建 发表于 2017-05-31 | 分类于 web前端| | 阅读次数 11677 首先 首发博客: 我的博客 项目源码: 源码 项目预览: 预览 因为个人的喜好 ...
- JS - false 的 六种类型
document.write("--------------");document.write(!false);document.write("------------- ...
- Eth合约攻击
前言 Ethernaut是一个类似于CTF的智能合约平台,集成了不少的智能合约相关的安全问题,这对于安全审计人员来说是一个很不错的学习平台,本篇文章将通过该平台来学习智能合约相关的各种安全问题,由于关 ...
- 本地启动tomcat的时候报java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space
1.问题:我在tomcat中放入了大量的war包,启动的时候报:java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: ...
- 问题解决 : MyBatis一对一查询时,打印结果只有一条数据
问题截图:修改后,结果返回条数正确 问题解决: 因为有重名的列,建议起个别名
- rhel7 系统服务——unit(单元)
Linux内核版本从3.10后开始使用systemd管理服务,这也是系统开机后的第一个服务.systemd通过unit单元文件来管理服务. 它保存了服务.设备.挂载点和操作系统其他信息的配置文件,并能 ...
- 设计模式课程 设计模式精讲 18-2 迭代器模式coding
1 代码演练 1.1 代码演练1(迭代器模式演练) 1.2 代码使用场景 1 代码演练 1.1 代码演练1(迭代器模式演练) 需求: 课程管理:需要实现课程可进行增添,删除,并能够打印出课程列表. u ...