C#中如何向二维数组整行赋值?

定义一个i行4列的二维数组 strArray[i,4],i从1开始递增,假设最大100。后面三列是固定的值,假设第一行就是1,1,1,1第二行就是2,1,1,1,第三行就是3,1,1,1以此类推。请问如何用最短的代码实现添加。

  方法是在一对大括号中,使用一个以逗号分隔的数据项列表。代码清单2-30声明了一个字符串数组,然后在一对大括号中指定了9种不同的编程语言的名称。
  声明数组的同时进行赋值
  string[] languages = { "C#", "COBOL", "Java",
"C++", "Visual Basic", "Pascal",
"Fortran", "Lisp", "J#"};
  在这个以逗号分隔的列表中,第一项成为数组的第一个元素,第二项成为第二个元素,依此类推。我们使用大括号来定义一个数组字面量。
只有在同一个语句中声明并赋值时,代码清单2-30的赋值语法才可用。如果是在声明了之后才进行赋值,则需要使用new关键字和对应的数据类型,如代码清单2-31所示。
  代码清单2-31 声明之后再进行数组赋值
  string[] languages;
languages = new string[]{"C#", "COBOL", "Java",
"C++", "Visual Basic", "Pascal",
"Fortran", "Lisp", "J#" };

  C#还支持将new关键字作为声明语句的一部分使用,所以它允许像代码清单2-32那样的赋值和声明。
  代码清单2-32 声明的同时使用new进行数组赋值
  string[] languages = new string[]{
"C#", "COBOL", "Java",
"C++", "Visual Basic", "Pascal",
"Fortran", "Lisp", "J#"};

  使用new关键字是告诉“运行时”为数据类型分配内存。它指示“运行时”实例化数据类型——本例是一个数组。
  任何时候将new关键字作为数组赋值的一部分使用,都可以同时在方括号内指定数组的大小。代码清单2-33演示了这个语法。
  代码清单2-33 使用new关键字进行声明和赋值
  string[] languages = new string[9]{
"C#", "COBOL", "Java",
"C++", "Visual Basic", "Pascal",
"Fortran", "Lisp", "J#"};

在初始化语句中,数组的大小和大括号中包含的元素数量必须匹配。除此之外,也可以分配一个数组,但不指定它的初始值,如代码清单2-34所示。
  代码清单2-34 分配数组,但不指定初始值
  string[] languages = new string[9];

  分配一个数组但不指定初始值仍然会初始化每个元素。“运行时”会将每个元素初始化为它们的默认值,如下所示:
  引用类型(比如string)初始化为null;
  数值类型初始化为零;
  bool初始化为false;
  char初始化为\0。
  其结果就是,在使用之前,不必单独对数组的每个元素进行赋值。
  在C# 2.0中,可以使用default()运算符来判断一种数据类型的默认值。default()获取一个数据类型作为参数。例如,default(int)会返回0,而default(char)会返回\0。
  由于数组大小不被作为变量声明的一部分,所以可以在运行时指定数组大小。例如,代码清单2-35根据在Console.ReadLine()调用中由用户指定的大小来创建一个数组。
  代码清单2-35 在运行时定义数组大小
  string[] groceryList;
System.Console.Write("How many items on the list? ");
int size = int.Parse(System.Console.ReadLine());
groceryList = new string[size];
// ...
  C#采取类似的方式来处理多维数组。要以逗号分隔每一维上的大小。代码清单2-36初始化了一个没有走棋的tic-tac-toe棋盘。
  代码清单2-36 声明一个二维数组
  int[,] cells = int[3,3];
  还可以像代码清单2-37那样,将一个tic-tac-toe棋盘初始化成特定的棋子布局。
  初始化一个二维整数数组
  int[,] cells = {
{1, 0, 2},
{1, 2, 0},
{1, 2, 1}
};
  初始化采用的模式是一个有3个int[]类型的元素的数组,每个元素都具有相同的大小。在本例中,这个大小是3。注意,每个int[]元素的维必须是完全一致的。也就是说,像代码清单2-38那样的声明是无效的。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-11-25
for(int j = 0;j<i;j++)
{
strArray[j][0]=j;
for(int z=1;z<4;z++)
{
strArray[j][z]=1;
}
}本回答被提问者采纳

求!C# 循环语句给二维数组赋值问题解决方法
先用List list=new list \/\/ 其中T是存放的类型。list.Add就添加内容嘛。最后:T[]listArray=list.ToArray();\/\/ 这里就得到了你需要的数组了。不过你要弄2维数组干什么?是把C,存在一个,D存在一个么。方法是一样的,看你怎么用而已。

C# 动态二维数组赋值
int[,] i1=new int[,]是错误写法,编译器提醒有错。动态数组可用List泛型类,可以用如下办法构成动态的2维数组并赋值。List<int[]> i1 = new List<int[]>();int[,] i2=new int[,] {{1,1},{2,2},{3,3},{4,4}};int [] i3=new int[2];for (int j = 0; j < 4; j...

c#二维数组怎么定义与赋值
\/\/不规则二维数组 int[][] array = new int[2][];array[0] = new int[3];array[0][1] = 11;array[0][2] = 12;array[1] = new int[] { 1, 2, 3, 4,5 };\/\/或int[][] array = new int[2][] { new int[] {0,11,12 }, new int[] {1,2,3,4,5 }};Conso...

c#中如何给数组赋值?
其结果就是,在使用之前,不必单独对数组的每个元素进行赋值。在C# 2.0中,可以使用default()运算符来判断一种数据类型的默认值。default()获取一个数据类型作为参数。例如,default(int)会返回0,而default(char)会返回\\0。由于数组大小不被作为变量声明的一部分,所以可以在运行时指定数组大小。例如,...

C#中二维数组定义与赋值问题
首先,在一个函数里面public是不能加的,因为在一个函数里面的变量时默认为私有的,是局部变量,只能在函数里面使用,所以要将public去掉 其次,二维数组不能这样定义,你这个应该叫交错数组,如果是交错数组,代码应该这么写,i,j的值自己决定 static void Main(string[] args){ float[][] borehole=...

C#怎么样拿到二维数组中的第一行第一列的值
int a[3][5]; \/\/ 3行5列 二维数组 下标 从 0 开始,所以 第一行第一列的 下标是 [0][0]二维数组元素a[j][i] , j 对应 行,对应坐标 y. i 对应 列,对应坐标 x.

C#如何定义二维数组
定义C#中的二维数组,首先要明确数组的维度,即数组的行和列。例如,要定义一个表示一年中各月天数的二维数组,我们可以这样写:int[][] date = new int[12][];这里,数组的维度为12行,每一行的元素个数由具体月份决定。接下来,根据月份的不同,我们可以给每一行的元素赋值。比如,我们可以使用...

c#返回二维数组的一行
二维数组是不能取得一行的,交叉数组才能取得一行。等下截个图你看看 int[][] a = new int[4][]; for (int i = 0; i < 4; i++) { a[i] = new int[6]; for (int j = 0; j < 6; j++) a[i][j] = i * 10 + j; } return a[1];...

c#如何定义一个二维数组,先声明一维
1、首先打开visualstudio开发工具,创建一个控制台应用程序,用于演示二维数组的定义方式。2、在Program.cs文件中,定义二维数组,比如,定义一个两行两列的数组:int[,]arr=newint[2,2]。3、上一步只是定义了一个二维数组,并未给元素赋值,默认编译器都会为int类型的数组全部初始化为0。要给元素...

c#语言编译 for(i) for(j) { if(x[i,j].grade!=
你在声明二维数组x[,]的时候就要每一个元素进行赋值,不然,会默认为null, grade应该是你声明的元素类型的属性吧,你不赋值就不能避免为null的情况 你上面代码完全可以这样写;y[x,x]=x[x,x];

相似回答