当前位置:首页 > C#学习

C#的二维数组的声明和访问

小道8年前 (2018-08-24)C#学习6575

C#的二维数组的声明和访问

二维数组,就是以数组作为元素的数组。挺拗口的,看看它跟一维数组的对比:

左边的 a 是一维数组,数组中包含 4 个 int 型变量:a[0]、a[1]、a[2]、a[3] 。


右边的 b 是二维数组,数组中包含 2 个 int 型一维数组:b[0]、b[1] 。而 b[0] 和 b[1] 中又分别包含 3 个 int 型变量:b[0,0]、b[0,1]、b[0,2]、b[1,0]、b[1,1]、b[1,2] 。


总结一下,二维数组这样声明:

int[,] arr = new int[2,3]; //包含2个一维数组,每个一维数组包含3个变量,总共2*3=6个数组元素

二维数组元素这样赋值和打印:

arr[1,0] = 28; //二维数组元素有2个索引,都是从0开始,以arr数组为例,元素索引从[0,0]到[1,2]
Console.Write( arr[1,0] );

我们可以用二维数组管理相关的数据,比如有 4 名同学参加语文和数学两门考试,我们用二维数组存储他们的成绩,每位同学的 2 门课分数,存储在一个一维数组中:

输出结果:


以上内容节选自 《慕课网》


一次考试,各位同学的姓名和分数如下:

请编写程序,输出分数最高的同学的姓名和分数。

        static void Main(string[] args)
        {
            string[,] s = new string[2, 8] { {"吴松", "钱东宇", "伏晨", "陈陆", "周蕊", "林日鹏", "何昆", "关欣" }, { "89", "90", "98", "56", "60", "91", "93", "85" } };//定义一个二维数组。
            int max = -1;//定义一个整型变量。
            string name="";//定义一个字符串变量
            for (int i=0;i<8;i++)//循环
            {
                int cj = Convert.ToInt32(s[1,i]);//把成绩转变成整数
                if (cj>max)//判断。
                {
                    max = cj;//赋值最大成绩
                    name = s[0, i];//赋值最大成绩的名字。
                }
            }
            Console.WriteLine("分数最高的是{0},分数是{1}",name,max);//输出。
            Console.ReadKey();
        }

输出结果:

image.png

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://www.daobk.com/post/64.html

分享给朋友:

“C#的二维数组的声明和访问” 的相关文章

面向对象概念

面向对象概念

面向对象不是取代面向过程的。类、对象。“人”是类,“张三”是“人”这个类的对象。类是抽象的,对象是具体的。按钮就是类,某个按钮就是对象。对象可以叫做类的实例(Instance)。类就像int,对象就像10。字段Field(和某个对象相关的变量),字段就是类的状态。人这个类有姓名、年龄、身高等字段。类…

构造函数

构造函数

构造函数用来创建对象,并且可以在构造函数中对对象进行初始化。构造函数是用来创建对象的特殊函数,函数名和类名一样,没有返回值,连void都不用。构造函数可以有参数,new对象的时候传递函数参数即可构造函数可以重载,也就是有多个参数不同的构造函数。如果不指定构造函数,则类有一个默认的无参构造函数。如果指…

异常与异常处理

异常与异常处理

传统的错误表示方式:错误码。举例。需要知道不同错误码的含义,如果不处理错误码,则程序可能陷入不可以预置的错误。陈摄影师以为文件已经被删除造成的麻烦。错误码的缺点:不处理则很难发现,每次处理则很麻烦;难以看出错误的原因;容易使得程序进入不确定状态。try catch。Exception ex 异常也是…

静态成员和静态类

静态成员和静态类

全局变量。static类变量。不用new就能用的方法:static方法,static方法其实就是普通函数在static方法中可以调用其他static成员,但是不能调用非static成员。在非static方法中可以调用static成员。    class&nbs…