如果使用C语言,打印九九乘法表,效果如下图所示:
如果要实现这个效果,思路有好几种。我来说一下我的思路:
在大的思路上,使用两个for循环,第二个for循环,嵌套在第一个for循环里面
第一个for循环,控制字符右边的数字。比如:2 x 3 = 6,第一个for循环,控制3,第二个for循环,控制2
每当第二个for循环执行结束后,将第二个for循环的计数器,重置为1
当第一个for循环的计数器大于9的时候,跳出整个循环
代码如下图所示:
第6行到第14行,就是C语言打印九九乘法表的核心算法。
这里,有两个计数器: i_1 和 i_2 (第5行),都初始化为1
最外层的for循环,计数器为 i_1 , 最外层for循环一共循环九次,内层的for循环,循环次数,取决于最外层for循环计数器i_1的值。比如:当i_1值为2的时候,内层的for循环就循环2次;当i_1值为3的时候,内层的for循环就循环3次;以此类推
每当最外层循环结束的时候,就将内层循环的计数器,也就是变量i_2的值初始化为1
比如:
外层的for循环,循环到第三次的时候,内层for循环,打印出来的效果是:
1 x 3 = 3 2 x 3 = 6 3 x 3 = 9
外层的for循环,循环到第四次的时候,内层for循环,打印出来的效果是:
1 x 4 = 4 2 x 4 = 8 3 x 4 = 12 4 x 4 = 16
每一行的i_2值,都是从1开始
第10行中,%2d 的含义是:打印时候,这个位置的整数,至少占据两个整数的位置。这是为了打印出的效果,排版好看。如果%d这里不加数字2,那么打印出的效果如下:
我们可以看到:上图总,画箭头的部分,排版稍微有些倾斜了。所以,在%d中间,加上数字2,就会让打印出来的整个布局,变得更加好看。
这个乘法表,也可以使用while循环来实现。大致的原理,和for循环是一样的。代码如下图所示:
如上图代码所示,如果使用while循环,也是将两个while循环相互嵌套
每天晚上20:00我都会开直播给大家分享C/C++游戏编程知识和路线方法,群里会不定期更新最新的教程和学习方法(进群送2017C/C++游戏编程学习教程),大家都是学习C/C++游戏编程的,或是转行,或是大学生,还有工作中想提升自己能力的C/C++党,如果你是正在学习C/C++游戏编程的小伙伴可以加入学习。最后祝所有程序员都能够走上人生巅峰,让代码将梦想照进现实,非常适合新手学习,有不懂的问题可以随时问我,工作不忙的时候希望可以给大家解惑。
领取专属 10元无门槛券
私享最新 技术干货