一、右上三角
源代码
#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");
else
printf("%d*%d=%2d ",i,j,i*j);
}
printf("\n");
}
return 0;
}
运行结果![](https://i-blog.csdnimg.cn/blog_migrate/9b2b19ac9d0d5efae2449468817a35f9.png)
二、左上三角
源代码
#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;
}
运行结果 ![](https://i-blog.csdnimg.cn/blog_migrate/84529395838acbcf22fa905961cf3793.png)
三、左下三角
源代码
#include <stdio.h>
main()
{
int i,j;
for(i=1;i<=10;i++)
printf("%5d ",i);
printf("\n------------------------------------------------------------------\n");
for(i=1;i<10;i++)
{
for(j=1;j<=i;j++)
printf("%2d*%d=%-3d",i,j,i*j);
printf("\n");
}
}
运行结果![](https://i-blog.csdnimg.cn/blog_migrate/17f8f137b558d6b8595652dfa94e8843.png)
该程序的printf语句中的格式符“%5d ”和“%2d*%d=%-3d”的作用是使输出的九九乘法表的各列式子上下对齐,每个式子占8个字符位置。其中,“%5d ”表示i值占5列,右对齐,再输出两个空格;“%-3d”表示“i*j”的值占3列,左对齐
二、右下三角
#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;
}