C# 二维数组初始化与操作示例
下载需积分: 12 | TXT格式 | 3KB |
更新于2024-09-18
| 147 浏览量 | 举报
"C#语言中的二维数组创建与操作"
在C#中,二维数组是一种特殊的数组,它由多个一维数组组成,可以用来存储多行多列的数据。本资源主要介绍了如何创建和操作二维数组。
首先,创建一个二维数组的基本语法如下:
```csharp
dataType[,] arrayName = new dataType[rows, columns];
```
在这个例子中,`dataType`是数组元素的数据类型,`arrayName`是你为数组起的名字,`rows`是数组的行数,而`columns`是列数。
例如,创建一个2行14列的整数二维数组可以这样写:
```csharp
int[][] arr = new int[2][14];
```
然后,你可以通过嵌套循环来初始化数组的每个元素。在提供的代码中,使用了两个for循环来填充数组的值:
```csharp
for (int i = 0; i < 2; i++)
{
for (int n = 0; n < 14; n++)
{
arr[i][n] = "要赋的值";
}
}
```
这里的"要赋的值"应当替换为你实际要赋给数组元素的值。
除了初始化,还可以进行更复杂的操作,如对二维数组进行算术运算。示例中定义了一个名为`add`的方法,用于将两个同样大小的二维数组相加。方法接收两个二维数组(a1和a2)以及它们的维度(width和height)作为参数,并返回一个新的二维数组,其元素是输入数组对应位置元素的和。如果输入的数组尺寸不匹配,方法会返回null。
```csharp
private int[,] add(int[,] a1, int[,] a2, int width, int height)
{
if (a1.GetLength(0) != width || a1.GetLength(1) != height || a2.GetLength(0) != width || a2.GetLength(1) != height)
return null;
int[,] a3 = new int[width, height];
for (int i = 0; i < width; i++)
for (int j = 0; j < height; j++)
a3[i, j] = a1[i, j] + a2[i, j];
return a3;
}
```
接下来,定义了两个3x3的二维数组`a1`和`a2`,并调用`add`方法将它们相加,结果存储在`a3`中。如果`a3`不为null,程序将遍历并显示`a3`的所有元素。
```csharp
int[,] a1 = new int[,] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
int[,] a2 = new int[,] { { 9, 8, 7 }, { 6, 5, 4 }, { 3, 2, 1 } };
int[,] a3;
a3 = add(a1, a2, 3, 3);
if (a3 == null)
return;
string s = "";
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
s += a3[i, j].ToString() + " ";
}
s += "\n";
}
MessageBox.Show(s);
```
这段代码展示了如何通过遍历二维数组并使用`ToString()`方法将其元素转换为字符串,以便在消息框中显示。
总结来说,C#中的二维数组提供了处理多行多列数据的能力,可以通过初始化、算术运算和遍历等方法进行操作。理解这些基本概念和操作对于编写涉及矩阵或表格数据的C#程序至关重要。
相关推荐









wo362
- 粉丝: 0
最新资源
- 64位WIN10下通过文件操作驱动USB警示灯技术分享
- Java图片上传功能实现教程
- 安装gcc 4.4.7-4.el6.x86_64软件包的方法与步骤
- 基于ASP.Net MVC和Ajax技术的高校管理系统
- Zachery Zbinden的学术网站:探索JavaScript领域
- 深入分析GMT0104-2021云服务器密码机技术规范
- Android 2.1版摄像机功能使用指南
- 注入辅助工具内部版:深度应用与优化
- 探索AGV自动引导小车在Solidworks中的应用
- Android文件存储实现日程安排应用解析
- React开发入门与项目脚本使用指南
- ANN7.8稳定版发布:性能提升,安全优化
- mina框架源码深度解析及安卓交互应用
- MATLAB源码实现GMDH自组织网络模型预测时间序列
- Python101研讨会代码挑战解析
- CSS3动画实现3D骰子滚动效果教程