主要思想:构建几个函数,然后分别调用它们。利用数组去依次存储这些数据。
可参考:(20条消息) C语言实现九九加法表的形式_jinzhi66的博客-CSDN博客
void printAll(int number[][10]) //输出全部的函数
{
int i,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
printf("%d*%d=%-6d",i,j,number[i][j]); //-6%d为左对齐
printf("\n");
}
}
void printLeftDown(int number[][10]) //输出左下角的函数
{
int i,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
printf("%d*%d=%-6d",i,j,number[i][j]);
printf("\n");
}
}
void printRightDown(int number[][10]) //输出右下角
{
int i,j,n;
for(i=1;i<=9;i++)
{
for(n=1;n<10-i;n++)
printf(" ");
for(j=1;j<=i;j++)
printf("%d*%d=%-4d",i,j,number[i][j]);
printf("\n");
}
}
void printLeftUp(int number[][10]) //输出左上角
{
int i,j;
for(i=1;i<=9;i++)
{
for(j=i;j<=9;j++)
printf("%d*%d=%-6d", i,j,number[i][j]);
printf("\n");
}
}
void printRightUp(int number[][10]) //输出右上角
{
int i,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
{
if(j<i)
printf(" ");
else
printf("%d*%d=%-4d", i,j,number[i][j]);
}
printf("\n");
}
}
int main()
{
int i,j;
int choice;
int Nine[10][10]={0};
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
Nine[i][j]=i*j;
}
printf(" 1:输出全部\n");
printf(" 2:输出左下三角部分\n");
printf(" 3:输出右下三角部分\n");
printf(" 4:输出左上三角部分\n");
printf(" 5:输出右上三角部分\n");
printf("请输入你的选择:");
scanf("%d", &choice);
switch(choice)
{
case 1:
printAll(Nine); break;
case 2:
printLeftDown(Nine); break;
case 3:
printRightDown(Nine); break;
case 4:
printLeftUp(Nine); break;
case 5:
printRightUp(Nine); break;
}
return 0;
}