当前位置:首页 » 《休闲阅读》 » 正文

C语言打印九九乘法表的多种方式&多种形式(完整,左上,左下,右上,右下)

23 人参与  2024年04月09日 15:10  分类 : 《休闲阅读》  评论

点击全文阅读


?博客主页:肩匣与橘?欢迎点赞 ? 收藏 ⭐留言 ? 如有错误敬请指正!?本文由肩匣与橘编写,首发于CSDN??生活依旧是美好而又温柔的,你也是✨ 

9️⃣9️⃣乘法表

?️前言

1️⃣完整型

2️⃣左上三角型

3️⃣左下三角型

3.1 for-for

3.2 while-while

3.3 while-for

3.4 for-while

3.5 定义变量

3.6 递归

4️⃣右上三角型

5️⃣右下三角型


?️前言

        九九乘法表是我们从小学就开始学习的基础数学知识,不仅是学习数学时必须要掌握的基础知识之一,也是日常生活中常见的计算方法。而在学习编程的过程中,能够打印九九乘法表同样是必须要掌握的基础知识之一。本文将结合C语言的基础知识,通过多种方式实现打印九九乘法表的多种形式,望大家加深对循环语句的理解的同时,进一步可以提高自己的编程能力。

1️⃣完整型

       完整代码:

#include<stdio.h>int main(){int i,j;for(i=1;i<=9;i++){for(j=1;j<=9;j++){printf("%d*%d=%2d\t",i,j,i*j);}printf("\n");}return 0;}

       这段代码中,我们使用了两层循环语句来实现完整的99乘法表。外层循环控制乘数i的取值范围,从1到9,内层循环控制乘数j的取值范围,从1到9。在每次内层循环中,我们使用printf函数输出乘法表的一项,其中%d表示整数占位符,%d*%d=%2d表示输出的格式。

       %2d表示输出一个整数,占用两个字符的位置,如果该整数不足两个字符,则在前面加上空格进行补齐,\t表示输出一个制表符,用于在控制台中进行对齐。在输出一项乘法表后,我们使用printf函数的转义字符"\n"来输出一个换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

2️⃣左上三角型

       完整代码:

#include<stdio.h>int main() {int i,j;for(i=1; i<=9; i++) {for(j=1; j<=9; j++) {if(j>=i)printf("%d*%d=%2d  ",i,j,i*j);}printf("\n");}return 0;}

       这段代码中,我们使用了两层循环语句来实现完整的99乘法表。外层循环控制乘数i的取值范围,从1到9,内层循环控制乘数j的取值范围,从1到9。在每次内层循环中,进行i和j的比较,j大于等于i时,我们使用printf函数输出乘法表的一项,其中%d表示整数占位符,%d*%d=%2d表示输出的格式。

       %2d表示输出一个整数,占用两个字符的位置,如果该整数不足两个字符,则在前面加上空格进行补齐,在输出一项乘法表后,我们使用printf函数的转义字符"\n"来输出一个换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

3️⃣左下三角型

3.1 for-for

       完整代码:

#include <stdio.h>int main() {    int i, j;    for (i = 1; i <= 9; i++) {        for (j = 1; j <= i; j++) {            printf("%dx%d=%d\t", j, i, i * j);        }        printf("\n");    }    return 0;}

       这段代码中,我们使用了两个for循环,外层循环控制被乘数i的取值范围,从1到9;内层循环控制乘数j的取值范围,从1到i。在每次内层循环中,使用printf函数输出当前的乘法表项,其中%d 表示输出整数,\t表示输出制表符,使每个乘法表项都占用固定的宽度;使用 \n输出换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

3.2 while-while

       完整代码:

#include <stdio.h>int main() {    int i = 1;    while (i <= 9) {        int j = 1;        while (j <= i) {            printf("%d*%d=%d\t", i, j, i * j);            j += 1;        }        printf("\n");        i += 1;    }    return 0;}

       这段代码中,我们使用了两个 while 循环,外层循环控制被乘数 i 的取值范围,从 1 到 9;内层循环控制乘数 j 的取值范围,从 1 到 i。在每次内层循环中,使用 printf 函数输出当前的乘法表项,其中 %d 表示输出整数,\t 表示输出制表符,使每个乘法表项都占用固定的宽度;使用 \n 输出换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

3.3 while-for

       完整代码:

#include <stdio.h>int main() {    int i = 1;    while (i <= 9) {        int j;        for (j = 1; j <= i; j++) { // for循环中的range()函数等价于range(1, i+1)            printf("%d*%d=%d ", i, j, i * j);        }        printf("\n");        i += 1;    }    return 0;}

       这段代码中,我们使用了一个 while 循环和一个 for 循环,外层循环控制被乘数 i 的取值范围,从 1 到 9;内层循环控制乘数 j 的取值范围,从 1 到 i。在每次内层循环中,使用 printf 函数输出当前的乘法表项,其中 %d 表示输出整数,空格表示乘法表项之间的分隔符,使用 \n 输出换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

3.4 for-while

       完整代码:

#include <stdio.h>int main() {    int i, j;    for (i = 1; i <= 9; i++) {        j = 0;        while (j < i) {            j += 1;            printf("%d*%d=%d ", i, j, i * j);        }        printf("\n");    }    return 0;}

       这段代码中,我们使用了一个 for 循环和一个 while 循环,外层循环控制被乘数 i 的取值范围,从 1 到 9;内层循环控制乘数 j 的取值范围,从 1 到 i。在每次内层循环中,使用 printf 函数输出当前的乘法表项,其中 %d 表示输出整数,空格表示乘法表项之间的分隔符,使用 \n 输出换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

3.5 定义变量

       完整代码:

#include <stdio.h>int main() {    int a[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};    int i, j;    for (i = 0; i < 9; i++) {        j = 1;        while (j <= a[i]) {            printf("%d*%d=%-3d", a[i], j, a[i] * j);            j += 1;        }        printf("\n");    }    return 0;}

       这段代码中,我们使用了一个 for 循环和一个 while 循环,外层循环控制被乘数 i 的取值范围,从 1 到 9;内层循环控制乘数 j 的取值范围,从 1 到 i。在每次内层循环中,使用 printf 函数输出当前的乘法表项,其中 %d 表示输出整数,%-3d 表示输出整数并占据 3 个字符的宽度,且从左边对齐,\t 表示乘法表项之间的分隔符,使用 \n 输出换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

3.6 递归

       完整代码:

#include <stdio.h>void multiplication(int n);int main() {    multiplication(1);    return 0;}void multiplication(int n) {    int m;    if (n < 10) {        for (m = 1; m <= n; m++) {            printf("%d*%d=%-3d", m, n, m * n);        }        printf("\n");        multiplication(n + 1);    }}

       这段代码中,我们使用了一个递归函数 multiplication,函数中使用了一个 for 循环来输出每一行乘法表中的所有项,并将函数自身递归调用来输出下一行乘法表。在输出乘法表项时,使用 printf 函数输出当前的乘法表项,其中 %d 表示输出整数,%-3d 表示输出整数并占据 3 个字符的宽度,且从左边对齐,\t 表示乘法表项之间的分隔符,使用 \n 输出换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

4️⃣右上三角型

       完整代码:

#include<stdio.h>int main() {int i,j;for(i=1; i<=9; i++) {for(j=1; j<=9; j++) {if(j<i)printf("\t");elseprintf("%d*%d=%2d  ",i,j,i*j); }printf("\n");}return 0;}

       这段代码中,我们使用了两个 for 循环来控制输出的行数和列数,并使用了 if 语句来控制输出的格式和内容。在输出乘法表项时,使用 printf 函数输出当前的乘法表项,其中 %d 表示输出整数,%2d 表示输出整数并占据 2 个字符的宽度,且从右边对齐,\t 表示乘法表项之间的分隔符,使用 \n 输出换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:

5️⃣右下三角型

       完整代码:

#include<stdio.h>int main() {int i,j;for(i=1; i<=9; i++) {for(j=1; j<=9-i; j++) {printf("\t");}for(j=1; j<=i; j++)printf("%d*%d=%2d  ",i,j,i*j);printf("\n");}return 0;}

       这段代码中,我们使用了两个 for 循环来控制输出的行数和列数,并使用了 printf 函数来输出每一项乘法表项。在输出乘法表项时,使用 printf 函数输出当前的乘法表项,其中 %d 表示输出整数,%2d 表示输出整数并占据 2 个字符的宽度,且从右边对齐,\t 表示乘法表项之间的分隔符,使用 \n 输出换行符,从而将下一行乘法表的第一个数放在新的一行。

       运行结果:


       总之,九九乘法表主要是使用不同的循环结构、条件语句和输出格式进行实现,多加练习可以更加熟悉C 语言的基本语法和控制结构,还可以加深了对循环和条件语句的理解。


点击全文阅读


本文链接:http://zhangshiyu.com/post/92788.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 祖母寿宴,侯府冒牌嫡女被打脸了(沈屿安秦秀婉)阅读 -
  • 《雕花锦年,昭都旧梦》(裴辞鹤昭都)完结版小说全文免费阅读_最新热门小说《雕花锦年,昭都旧梦》(裴辞鹤昭都) -
  • 郊区41号(许洛竹王云云)完整版免费阅读_最新全本小说郊区41号(许洛竹王云云) -
  • 负我情深几许(白诗茵陆司宴)完结版小说阅读_最热门小说排行榜负我情深几许白诗茵陆司宴 -
  • 九胞胎孕妇赖上我萱萱蓉蓉免费阅读全文_免费小说在线看九胞胎孕妇赖上我萱萱蓉蓉 -
  • 为保白月光,侯爷拿我抵了债(谢景安花田)小说完结版_完结版小说全文免费阅读为保白月光,侯爷拿我抵了债谢景安花田 -
  • 陆望程映川上官硕《我的阿爹是带攻略系统的替身》最新章节阅读_(我的阿爹是带攻略系统的替身)全章节免费在线阅读陆望程映川上官硕
  • 郑雅琴魏旭明免费阅读_郑雅琴魏旭明小说全文阅读笔趣阁
  • 头条热门小说《乔书意贺宴临(乔书意贺宴临)》乔书意贺宴临(全集完整小说大结局)全文阅读笔趣阁
  • 完结好看小说跨年夜,老婆初恋送儿子故意出车祸_沈月柔林瀚枫完结的小说免费阅读推荐
  • 热推《郑雅琴魏旭明》郑雅琴魏旭明~小说全文阅读~完本【已完结】笔趣阁
  • 《你的遗憾与我无关》宋怀川冯洛洛无弹窗小说免费阅读_免费小说大全《你的遗憾与我无关》宋怀川冯洛洛 -

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1