全国统一服务热线

173-1709-2536

新闻中心

当前位置:首页>新闻中心

C#知识打印九九乘法表

前面几天里,学习并记录了 C# 编程语言的部分基础知识内容。学习是需要不断地学而时习之,一是为了巩固前面所学的知识,二是对前面学习的内容查缺补漏。因此,为了检验前面所学,下面以九九乘法表为例,做一个题目练习。

1、九九乘法表(一)

思路分析

较笨的方法,就是输入九个 Console.WriteLine() 在括号里填上对应的内容,如 1 * 1 = 1 等等。显然,如果这么做,那么学习编程语言的意义在哪里?我写在纸上都比这快。

首先,我们并不希望手动地一个一个敲出数字 1 到 9,而希望是程序能够自动输出 1 到 9.因此这里需要使用循环语句,例如:

for(int i=1;i<=9;i++){...}

这样一来,就可以获得了数字 1 到 9 的内容。

但我们需要的是两个数字相乘,前面的循环语句虽然获取了一组数字,但是每次调用的时候只有一个。因此,还需要再一个循环嵌套,获取第二个数字来进行相乘。

for(int j=1;j<=9;j++){...}

这样的结果,是存在一些重复的内容,例如:1 * 2 = 2 和 2 * 1 = 2 。这里,我们需要剔除一些重复的部分。只需要将上面循环的条件做一些修改即可:

for(int j=1;j<=i;j++){...}

另外还要提一下 C# 中两种打印方式,一种是不换行打印 Console.Write(),一种则是换行打印 Console.WriteLine(),也相当于 Console.Write("\n").

代码实现

for(int i=1;i<=9;i++){

for(int j=1;j<=i;j++){

int num = j * i;

Console.Write("{0} * {1} = {2}", j, i, num);

}

Console.WriteLine();

}

运行结果

2、九九乘法表(二)

思路分析

上面的九九乘法表是列是 1*x=y,第二列则是 2*x=y…

这时候变个需求,希望行是 1*x=y,第二行是2*x=y…

具体的实现也和上面的思路差不多:

for (int i = 1; i <= 9; i++){

for (int j = i; j <= 9; j++){

int num = i * j;

Console.Write("{0} * {1} = {2}\t", i, j, num);

}

Console.WriteLine();

}

结果是完成了前面的需求,但是这时候又萌生了一个需求,列是 x*1=y,第二列是x*2=y…说白了,就是靠右对齐。

首先在上面的程序基础上,我保留了所有,包括了重复的部分。其次加入了判断语句,如果个数字比第二个数字小,那么就直接输出空白。否则就正常输出。

实现代码

for (int i = 1; i <= 9; i++)

{

for (int j = 1; j <= 9; j++)

{

if (j < i)

{

Console.Write("\t\t");

}

else

{

int num = j * i;

Console.Write("{0} * {1} = {2}\t", i, j, num);

}

}

Console.WriteLine();

}

运行结果


QQ咨询
在线咨询
在线报名
173-1709-2536
173-1709-2536
返回顶部