0

我正在用 C# 做一个简单的练习,这就是问题所在:编写一个名为 TimeTable 的程序来生成 1 到 9 的乘法表,如图所示,使用两个嵌套的 for 循环:

Sample output:
 1  2  3  4  5  6  7  8  9
 2  4  6  8 10 12 14 16 18
 3  6  9 12 15 18 21 24 27
 4  8 12 16 20 24 28 32 36
 5 10 15 20 25 30 35 40 45
 6 12 18 24 30 36 42 48 54
 7 14 21 28 35 42 49 56 63
 8 16 24 32 40 48 56 64 72
 9 18 27 36 45 54 63 72 81

这是我的代码

int n = 9;

for (int row = 1; row <= n; row++) 
{
    for (int col = 1; col <= n * n ;col++)
    {
        Console.Write(col);

    }
    Console.WriteLine();
}

我的代码不起作用任何人都可以帮助我。谢谢

4

2 回答 2

4

尝试:

int n = 9;

for (int row = 1; row <= n; row++) 
{
    for (int col = 1; col <= n; col++)
    {
        Console.Write(row * col);

    }
    Console.WriteLine();
}

问题在于,对于每一n行,您都在遍历n*n列,然后每一行都有示例表中的所有数字,除了一行。在这里,我们遍历每一行,每次遍历所有列并打印row*col所需的乘法结果。

于 2012-11-18T14:55:01.333 回答
0

尝试这个,

int n = 9;

Enumerable.Range(1, n).ToList().ForEach(row => 
{
    Enumerable.Range(1, n).ToList().ForEach(col => 
    { 
        Console.Write(string.Format("{0, 3}", row * col)); 
    });
    Console.WriteLine();
});
于 2012-11-18T15:43:24.037 回答