数组:
一组变量可以批量处理同一类型的数据一维数组,二维数组,多维数组
定义一维数组:
一、int[] aa = new int[5]; 定义了一个长度为5的int类型数组,但是未赋值,里面默认5个0,string类型的数组,未赋值的情况下,里面默认是“”;二、int[] aa = new int[5]{1,2,3,4,5};
定义了一个长度为5个int类型数组,并且立刻给它5个空都赋上值;三、int[] bb = new int[] {22,33,44,55,66};
不定义长度,直接赋值,计算机会自动计算长度;赋值:
aa[0] = 值;取值:
int a = aa[0];PS:定义时,中括号里放的是长度
而使用时是索引,下标------------------------------------------------------------------------二维数组:1、定义int[] aa = new int[2,4]{ {1,2,3,4},{5,6,7,8}};//2表示这个二维数组里有两个一维数组,4表示每个一维数组的长度。2、赋值:aa[0,1] = 值;//0表示从这个二维数组里的第一个一维数组,1表示从第一个数组里的序位数为1的值。3、取值:int a = aa[0,1];PS:取值时一定要看好中括号里的每一条信息
------------------------------------------------------------------------三维数组:1、定义int[] aa = new int[2,3,4]{ { {1,2,3,4},{5,6,7,8},{10,22,33,55}}, { {11,22,33,44},{55,66,77,88},{99,110,220,330}}};//2表示这个三维数组里有两个二维数组,3表示这个二维数组里有三个一维数组,4表示每个一维数组的长度。2、赋值:aa[0,1,3] = 值;//0表示从这个三维数组里的第一个二维数组,1表示从第一个二维数组里的第一个一维数组,3表示从第一个一维数组里的序位数为3的值。3、取值:int a = aa[0,1,3];------------------------------------------------------------------------
练习题:1、请输入学员的人数:
请输入第1个学员的分数:请输入第2个学员的分数:....请输入第n个学员的分数:*******************************一共n个学生;第1个学员的分数是:第2个学员的分数是:....第3个学员的分数是:总分是:平均分是:*******************************最高分是第x个学生,分数是:最低分是第y个学生,分数是://接收用户输入的人数 Console.Write("请输入学生的人数:"); int n = Convert.ToInt32(Console.ReadLine()); //第一一个无限长度的一维数组 decimal[] a = new decimal[n]; for (int i = 0; i < n; i++) { Console.Write("请输入第" + (i + 1) + "个学生的成绩:"); a[i] = Convert.ToDecimal(Console.ReadLine()); } Console.WriteLine("*******************************"); Console.WriteLine("一共有" + n + "个学生。"); decimal end = 0m; for (int j = 0; j < n; j++) { Console.WriteLine("第" + (j + 1) + "个学生的成绩是:" + a[j]); end += a[j]; } Console.WriteLine("总分是:" + end); Console.WriteLine("平均分是:" + (end / n)); Console.WriteLine("*******************************"); decimal min = 100, max = 0; int b = 0, c = 0; for (int k = 0; k < n; k++) { if (min > a[k]) { min = a[k]; c = k + 1; } if (max < a[k]) { max = a[k]; b = k + 1; } } Console.WriteLine("最高分是第" + b + "个学生,分数是:" + max + ";最低分是第" + c + "个学生,分数是:" + min); Console.ReadKey();
2、
冒泡排序:定义一个长度为10的int类型一维数组,
里面的值随意输入10个,然后让数组从大到小排列出来//1、定义长度为10的一维数组 int[] a = new int[10] { 3, 5, 2, 6, 34, 56, 23, 78, 9, 10 }; //2、判断大小 int z = 0; for (int i = 0; i < 10; i++) { for (int j = i + 1; j < a.Length; j++) { if (a[i] < a[j])//从大到小排列打印,if (a[i] > a[j]) 从小到大排列打印 { z = a[i]; a[i] = a[j]; a[j] = z; } } } for (int i = 0; i < a.Length; i++) { Console.WriteLine(a[i]); } Console.ReadLine();