1.1.21

上次更新:2019-04-17
发现了题解错误/代码缺陷/排版问题?请点这里:如何:提交反馈

解答

实现上没什么难度,打印表格的部分可以参考之前打印二位布尔数组的方法。
注意整型数据之间相除得到的仍然是整型,小数部分会直接舍去,例如 2 / 3 = 0。

代码

static void Main(string[] args)
{
    int columns = 2;
    int rows = int.Parse(Console.ReadLine());   //行号

    string[] names = new string[rows];          //姓名
    int[,] array = new int[rows, columns];      //输入的两个整数
    double[] results = new double[rows];        //计算结果

    for (int i = 0; i < rows; ++i)
    {
        string temp = Console.ReadLine();
        names[i] = temp.Split(' ')[0];
        for (int j = 0; j < columns; ++j)
        {
            array[i, j] = int.Parse(temp.Split(' ')[j + 1]);
        }
        results[i] = (double)array[i, 0] / array[i, 1];
    }

    PrintArray2D(names, array, results);
}

static void PrintArray2D(string[] names, int[,] array, double[] results)
{
    int rows = array.GetLength(0);//获取行数
    int columns = array.GetLength(1);//获取列数

    for (int i = 0; i < rows; i++)
    {
        Console.Write($"\t{names[i]}");
        for (int j = 0; j < columns - 1; j++)
        {
            Console.Write($"\t{array[i, j]}");
        }
        Console.Write($"\t{array[i, columns - 1]}");
        Console.Write($"\t{results[i]:N3}");    //变量名:N3 保留三位小数
        Console.Write("\n");
    }
}
上一题 下一题