打印9*9乘法口诀

一. main函数实现 

          1.参数n表示乘法口诀表总共有多少行

          2.设定两个循环

  •  外层循环控制总共有多少行              
  •  内层循环控制每行有多少个表达式以及表达式中的内容
#include
int main()
{
	int n = 0;
	scanf("%d", &n);
	for (int i = 1; i <= n; i++)
	{
		for (int j = 1; j <=i; j++)
		{
			printf("%d*%d=%d ", j, i, i * j);
		}
		printf("\n");
	}
	return 0;
}

 打印9*9乘法口诀表: 

打印9*9乘法口诀_第1张图片

        从图中看出第四排和第五排没有对齐,要想对齐,可以考虑 printf限定占位符的最小宽度(https://blog.csdn.net/wait___wait/article/details/135287228)

9*9乘法口诀表中最大位数是2,因此设最小宽度为2。默认是右对齐,而我们想要的是左对齐所以使用%-2d的形式。具体如下:

    printf("%d*%d=%-2d ", j, i, i * j);

 修改后运行示例:

打印9*9乘法口诀_第2张图片

        如果想打印12*12的乘法口诀表,思考一下如何做到对齐呢?

         答案是采用%-4d 的形式。

二. 自定义函数实现

        思路:

          1.设计函数原型,不需要返回值,参数n表示乘法口诀表总共有多少行

          2.设定两个循环

  •  外层循环控制总共有多少行              
  •  内层循环控制每行有多少个表达式以及表达式中的内容
void Multiplication(int i,int j,int n)
{
	for (int i = 1; i <= n; i++)
	{
		for (int j = 1; j <=i; j++)
		{
			printf("%d*%d=%-2d ", j, i, i * j);
		}
		printf("\n");
	}
}
#include
int main()
{
	int i = 0;
	int j = 0;
	int n = 0;
	scanf("%d", &n);
	Multiplication(i, j, n);
	return 0;
}

难点 :自定义函数时是否需要有返回值,实参和形参的对应关系。(自定义函数:https://blog.csdn.net/wait___wait/article/details/135047014?spm=1001.2014.3001.5502)(return返回值:


打印9*9乘法口诀_第3张图片

打印9*9乘法口诀_第4张图片

你可能感兴趣的:(练习题,C语言,算法,c语言,开发语言)