输出乘法口诀表,行列数目自己定义

1、题目:输出乘法口诀表,行列数目自己定义,如输入9,就是9*9乘法表,输入12,就是12*12乘法表;

2、代码

#include
#include 
int main()
{
	int n = 0;
	int i = 1, j = 1, sum = 0;
	printf("请输入口诀数字:>\n");
	scanf("%d", &n);
	for (i = 1; i <= n; i++)
	{
		for (j = 1; j <= i; j++)
		{
			sum = i*j;
			//其中 % 2d中的2表示输出两格,数向后靠齐,即右对齐;%-2d,则表示数左对齐
			printf("%d*%d=%2d  ", j, i, sum);
		}
		printf("\n");
	}

	/*int i = 1, j = 1,sum=0;
	for (i = 0; i <= 9; i++)
	{
	for (j = 1; j <= i; j++)
	{
	sum = i*j;
	printf("%d*%d=%2d  ", j, i, sum);
	}
	printf("\n");
	}*/

	system("pause");
	return 0;
}

3、结果

输出乘法口诀表,行列数目自己定义_第1张图片

4、总结

问题:scanf("%d\n",&n)和scanf("%d",&n) 前者为什么我输入一个数字后一直按回车都无法结束 除非输入数字回车

答:在scanf中\n不表示接受一个回车符,而是表示忽略所有的空白字符,包括回车,空格,tab 所以想要结束输入, 输入任意一个非空白字符即可, 但是该字符仍然会留在缓冲区中, 所以一般不建议在 scanf中使用\n。


你可能感兴趣的:(c/c++)