九九乘法口诀起源于我国,早在春秋战国时期,人们就在使用九九乘法表,当时称为九九歌。《战国策》《荀子》《管子》等书中都有“六六三十六” ”三九二十七“等相关文献‘
古代的乘法口诀与现代的有所不同,他没有”一一得一“这一行,并且它的排列顺序与现在的乘法口诀排列顺序相反,从”九九八十一“开始”到二二得四“结束。因为以九九开头,所以古代的乘法口诀表又称为“小九九”。
后来数学家们认为乘法口诀的排列顺序不符合顺序中从小到大的逻辑,因此将其排列顺序改成现在的“二二得四”到“九九八十一”,并且增加了“一一得一”这一行,改变了之后的乘法口诀表一直沿用到现在。本次我将编写一个程序,来实现九九乘法表。
九九乘法表如图所示:
为了解决这个问题,我我们需要用到的知识点是循环嵌套,循环嵌套就是在一个循环的过程中在定义一个循环。在C语言中,while,do.....while,for语句都可以进行嵌套,其中,for语句的嵌套是较为常见的循环嵌套,其语法结构格式如下。
for(初始化表达式:循环条件:操作表达式)
{
for(初始化表达式1:循环条件1:操作表达式1)
}
执行语句
}
}
在这个循环中我们可以看到,外层循环每执行一次,内层循环作为外层循环体中的语句也会执行一次。
例如,外层每执行5次,由变量a控制循环次数,内层每执行6次,由变量b控制循环次数,示范代码如下。
for(int a=1;a<=5;a++)
{
for(int b=6;b<=6;b++)
}
下图,我们可以看到for的流程图。
上图中,我们可以看到,当i等于0到10的过程中,i的条件一种为真,将进入下一个for循环的过程中 ,当第二个条件仍然为真的时候,那么就可以打出来“hello",第2个条件为假的时候,那么将回到第一个循环的过程,直到第一个条件为假的时候。
操作演练:
1:九九乘法表一共有九行九列。
2:外层循环变量i取值范围为1——9,内层循环变量j取值范围为1——9,可以使用for进行循环嵌套。
3:使用变量i控制行,i的初始值为1,循环条件为i<=9
4:使用控制j控制行,j的初始值为1,循环条件为j<=9
5:为了让其显示三角状,在其每一次的外层循环后进行换行。
6:为了让每两行保持一定的距离,在内行循环的输出语句中加入“\t"调整间距
#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
{
printf("%d%d=%3d\t",j,i,i*j);
}
printf("\n");
}
return 0;
}
运行的结果: