【Java编程实现 9 * 9 乘法表格打印四种形态,七种打法】

Java编程实现 9 * 9 乘法表格打印四种形态,七种方法打印

  • 废话篇
  • 打印 9 * 9 乘法表格
    • 嵌套for循环实现左下角打印
    • 嵌套for循环实现左上角打印
    • 嵌套for循环实现右上角打印
    • 嵌套for循环实现右下角打印
  • 使用while循环打印 9 * 9 乘法表格(一)
  • 使用while循环打印 9 * 9 乘法表格(二)
  • 使用单个for循环实现 9 * 9 表格的打印
  • 总结

废话篇

我们在初学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();}

执行结果如下:
示例1.1

嵌套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();//每打印一行记得换行}

执行结果如下:
示例1.2

嵌套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();}

执行结果如下:
示例1.3

嵌套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("");}

执行结果如下:
示例1.4

使用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("");

执行结果如下:
示例2.1

使用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++;}

执行结果如下:
示例2.2

使用单个for循环实现 9 * 9 表格的打印

//使用单个for循环打印for (int i = 1, j = 1; i <= 9; j++) {          //i为行,j为列,总行数为9System.out.print(i + "*" + j + "=" + (i*j) + "\t");if(i == j){i++;j = 0;       //将 j 重置于 0,保证每换一行后 j 从 1 开始System.out.println();}}

执行结果如下:
示例3.1

总结

循环控制在整个Java循环结构里面是重中之重,但是同时也是难点,所以要想快速掌握不但要理解其执行流程和语法格式,我们还要把每一个小案例都理解透彻,编程最忌讳的就是只说不干,理解和实践不能单一执行,要结合。

1.for循环是在我们明确循环条件以及循环范围的时间使用。
2.while循环是在我们只明确循环条件的时间使用。
3.嵌套for循环是在我们要实现xx行 xx列的时间使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/263853.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙OS应用开发之语句

在程序开发中&#xff0c;已经有上面的运算符和数据类型了&#xff0c;可以满足了大部的需求&#xff0c;但是这些程序还是比较简单的计算和逻辑运算&#xff0c;如果需要复杂的计算和逻辑处理&#xff0c;就需要采用复杂逻辑程序块来处理了&#xff0c;也就是复杂条件语句才能…

【W5500】关于使用外部网络变压器的原理图设计

直接上原理图 链接也放一个吧【链接】 按照这个画&#xff0c;我实验在立创EDA上打了一个实验过是可以用的~ 画出来的板子长这个样子【就不公开原理图和PCB了&#xff0c;这个板子还是很容易画的】~ 注意在立创上找对网口&#xff0c;要无变压器的网口&#xff0c;相比TB卖的那…

小模型学习(1)-人脸识别

【写作背景】因为最近一直在研究大模型&#xff0c;在与客户进行交流时&#xff0c;如果要将大模型的变革性能力讲清楚&#xff0c;就一定要能将AI小模型的一些原理和效果讲清楚&#xff0c;进而形成对比。当然这不是一件简单的事情&#xff0c;一方面大模型分析问题的的本质原…

19 redis缓存数据同步问题

1、缓存穿透 指缓存和数据库中都没有的数据&#xff0c;而用户不断发起请求。由于缓存不命中&#xff0c;并且出于容错考虑&#xff0c;如果从存储层查不到数据则不写入缓存&#xff0c;这将导致这个不存在的数据每次请求都要到存储层去查询&#xff0c;缓存就没有意义了。 在…

C语言精选——选择题Day42

第一题 1. 下面程序输出的结果是&#xff08;&#xff09; #include <stdio.h> int main () {int x;x printf("I See, Sea in C");printf("x%d" , x); } A&#xff1a;2 B&#xff1a;随机值 C&#xff1a;都不是 D&#xff1a;15 答案及解析 D p…

7.题目:编号1531 快递分拣

题目: ### 这道题主要考察map,vector,string的综合运用单号和城市都可以用string类型存储 #include <bits/stdc.h> using namespace std;map<string,vector<string>> mp;vector<string> citys;int main(){ios::sync_with_stdio(0),cin.tie(0),cout.t…

猿人学第三题 罗生门

思路 使用开发者工具进行抓包&#xff0c;验证数据请求的方式是什么&#xff0c;这里推荐大家使用浏览器自带的工具。 我们发现每次的翻页请求都会有一个jssm请求&#xff0c;这里我们先记录一下这个情况&#xff0c;现在观察一下cookie是否有变化。 这个实际上没有发生变化。…

最长连续序列(leetcode 128)

文章目录 1.问题描述2.难度等级3.热门指数4.解题思路方法一&#xff1a;排序方法二&#xff1a;哈希表 5.实现示例参考文献 1.问题描述 给定一个未排序的整数数组 nums &#xff0c;找出数字连续的最长序列&#xff08;不要求序列元素在原数组中连续&#xff09;的长度。 请你…

见微知著-从底层代码一撇Qt的控件绘图

Qt 是目前C语言首选的框架库。之所以称为框架库而不单单是GUI库&#xff0c;是因为Qt提供了远远超过GUI的功能封装&#xff0c;即使不使用GUI的后台服务&#xff0c;也可以用Qt大大提高跨平台的能力。 仅就界面来说&#xff0c;Qt 保持各个平台绘图等效果的统一&#xff0c;并…

不想写大量 if 判断?试试用规则执行器优化,就很丝滑!

近日在公司领到一个小需求&#xff0c;需要对之前已有的试用用户申请规则进行拓展。我们的场景大概如下所示: if (是否海外用户) {return false; }if (刷单用户) {return false; }if (未付费用户 && 不再服务时段) {return false }if (转介绍用户 || 付费用户 || 内推…

Terminator的layout设置(一个新的一键启动思路)

首先你得有terminator&#xff1a; sudo apt install terminator然后就能使用了&#xff0c;我一般喜欢修改它原本的水平和垂直分割&#xff1a;用ctrlshifta和ctrlshifts 把屏幕先分成多块&#xff1a; 比如是这样的&#xff0c;接下来 右键->点击Preference 弹框中上方标…

LVGL | Demo实例使用说明

LVGL | Demo实例使用说明 时间&#xff1a;2023年12月10日21:51:17 文章目录 LVGL | Demo实例使用说明Demos for LVGLAdd the examples to your projectsDemosWidgetsMusic playerKeypad and encoderBenchmarkStress Contributing Demos for LVGL Add the examples to your p…