C#二维数组基本用法实例

下面是关于“C#二维数组基本用法实例”的完整攻略。

什么是二维数组

在C#中,数组是一个由相同类型的若干元素在连续的存储空间中所组成的集合。而二维数组则是由多个一维数组组合形成的。可以理解为一个数据表格,有行和列两个维度。

声明二维数组

声明二维数组需要指定行数和列数,并使用两个方括号“[]”来表示。语法如下:

int[,] numbers = new int[3, 4];

上述代码定义了一个3行4列的整数类型的二维数组。需要注意的是,二维数组的元素也是可以初始化的。

int[,] numbers = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };

访问二维数组元素

访问二维数组的元素需要指定所在的行和列,语法如下:

int[,] numbers = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
Console.WriteLine(numbers[0, 0]); // 输出为1
Console.WriteLine(numbers[1, 2]); // 输出为6

示例说明1

下面的示例中,我们声明了一个5行4列的整数类型的二维数组,随机生成了每个元素的值,并输出了这个二维数组的内容。

int[,] numbers = new int[5, 4];
Random random = new Random();
for (int row = 0; row < 5; row++)
{
    for (int col = 0; col < 4; col++)
    {
        numbers[row, col] = random.Next(10, 100);
        Console.Write(numbers[row, col] + "\t");
    }
    Console.WriteLine();
}

运行后可以看到类似下面的结果:

10      61      41      71
72      84      29      51
86      27      17      13
97      25      75      14
35      10      21      70

示例说明2

下面的示例中,我们声明了一个学生成绩表格,其中第一列是学生的姓名,第一行是课程科目,其他格子中存储了学生在该科目中的成绩。然后计算出每个学生的平均分,并输出。

string[,] gradeTable = {
    {"Name", "Chinese", "Math", "English", "Politics"},
    {"John", "84", "78", "92", "88"},
    {"Lisa", "90", "92", "87", "91"},
    {"Alice", "76", "68", "70", "85"},
    {"Mike", "82", "90", "88", "82"}
};
for (int row = 1; row < gradeTable.GetLength(0); row++)
{
    string name = gradeTable[row, 0];
    double avgScore = 0;
    int count = 0;
    for (int col = 1; col < gradeTable.GetLength(1); col++)
    {
        int score;
        if (int.TryParse(gradeTable[row, col], out score))
        {
            avgScore += score;
            count++;
        }
    }
    avgScore /= count;
    Console.WriteLine(name + "'s average score is " + avgScore.ToString("0.00"));
}

运行后可以看到类似下面的结果:

John's average score is 85.50
Lisa's average score is 90.00
Alice's average score is 74.75
Mike's average score is 85.50

希望这份攻略可以帮助你学会如何在C#中使用二维数组!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#二维数组基本用法实例 - Python技术站

(0)
上一篇 2023年6月7日
下一篇 2023年6月7日

相关文章

  • C#统计字符串的方法

    C#中统计字符串的方法有多种,以下是常用的几种方法: 方法一:使用LINQ扩展方法Count()统计字符串长度 C#中的字符串类型(string)已经集成了Count属性,可以直接使用字符串的Count属性统计字符串中字符的个数。也可以通过LINQ扩展方法Count()实现统计字符串长度,具体代码如下所示: string str = "Hello …

    C# 2023年6月8日
    00
  • ASP.NET如何自定义项目模板详解

    ASP.NET如何自定义项目模板详解 ASP.NET是一个动态站点开发工具,它可以帮助开发者快速构建Web应用程序。ASP.NET允许开发者自定义项目模板,以便在日常开发中提高工作效率。本文将介绍如何自定义ASP.NET项目模板,以及如何使用自定义项目模板。 1. 创建自定义项目模板 步骤如下: 在Visual Studio中创建一个新的ASP.NET项目。…

    C# 2023年6月3日
    00
  • C#基本语法简介

    以下是关于C#基本语法的简介: C#基本语法 数据类型 C#中有许多数据类型,包括整数(int、long)、浮点数(float、double)、字符(char)、布尔值(bool)等等。同时,C#也支持用户自定义数据类型,使用关键字“class”进行定义。 以下是数据类型示例: int age = 18; float price = 9.99f; char …

    C# 2023年5月15日
    00
  • C#简单邮件群发通用类

    首先我们需要明确什么是C#邮件群发通用类。它是一种在C#编程语言下编写的针对邮件群发的通用类,可以基于.NET Framework的邮件类库(如SmtpClient)来快速发送“批量邮件”。下面是介绍如何编写和使用C#简单邮件群发通用类的步骤: 编写邮件群发通用类 1. 创建C#项目 在Visual Studio中创建一个新的控制台应用程序,我们将在该项目下…

    C# 2023年6月1日
    00
  • asp.net中使用log4net详解

    ASP.NET中使用log4net详解 什么是log4net log4net是Apache的一个开源项目,其目的是为.NET日志输出提供一个高效、灵活且可扩展的框架。log4net提供了丰富的日志记录机制,能够强化应用程序的可维护性和稳定性,将应用程序中各种事件输出到各种目标(文件、数据库、控制台等)。 如何使用log4net 步骤一:在项目中引用log4n…

    C# 2023年5月31日
    00
  • C#实现二叉查找树

    C#实现二叉查找树 什么是二叉查找树 二叉查找树(Binary Search Tree)也称为二叉搜索树,简称BST。它是一种基于二分查找思想的非线性数据结构,由多个节点组成,每个节点包含一个键值,同时有两个指针分别指向左右子节点,满足以下性质: 左子树上所有节点的键值小于它的根节点的键值。 右子树上所有节点的键值大于它的根节点的键值。 左右子树也必须是二叉…

    C# 2023年6月8日
    00
  • c#中实现图片灰度化技术详解

    c#中实现图片灰度化技术详解 什么是图片灰度化? 在计算机图形学中,灰度化是一种将图片从彩色图转化为灰度图的处理过程。灰度图不同于彩色图,它只有黑白两色,其颜色是通过将红色、绿色和蓝色通道加权平均得到的。 实现灰度化的方法 像素级操作法 像素级操作法是一种对图片进行遍历,针对每个像素点单独处理的方法。具体实现是将每个像素点的 R、G、B 通道值按一定权重进行…

    C# 2023年6月7日
    00
  • c#基础知识—委托,匿名函数,lambda

    C#基础知识:委托、匿名函数、Lambda表达式 什么是委托? C#中的委托是一种类型,它可以存储指向方法的引用。委托类似于C/C++语言中的函数指针,它用于在C#中实现回调方法、事件处理程序等。 委托的定义 在C#中,委托定义如下: public delegate void DelegateName(parameters); 其中,DelegateName…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部