一组变量
可以批量处理同一类型的数据
一维数组,二维数组,多维数组
定义
一维数组:
一、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];
注意:定义时,中括号里放的是长度,而使用时是索引
二维数组:
int[,] aa = new int[3, 4] //3是几个一维数组,4是一维数组的长度
{ { 1, 2, 3, 33 }, { 4, 5, 6, 66 }, { 7, 8, 9, 99 } };
Console.WriteLine(aa[0,3]);
三维数组:
int[, ,] bb = new int[2, 3, 4] {
{ { 1, 2, 3, 33 }, { 4, 5, 6, 66 }, { 7, 8, 9, 99 } },
{ { 1, 2, 3, 333 }, { 4, 5, 6, 66 }, { 7, 8, 9, 99 } }
};
冒泡排序:
从第一个开始挨个与后面的数字对比
练习1
请输入学员的人数:n
请输入第1个学员的分数:
请输入第2个学员的分数:
....
请输入第n个学员的分数:
*******************************
一共n个学生;
第1个学员的分数是:
第2个学员的分数是:
....
第3个学员的分数是:
总分是:
平均分是:
*******************************
最高分是第x个学生,分数是:
最低分是第y个学生,分数是:
Console.Write("请输入学员的人数:"); try { int a = Convert.ToInt32(Console.ReadLine()); decimal b = 0;//总分是 decimal[] aa = new decimal[a]; for (int i = 0; i < a; i++) { Console.Write("第" + (i + 1) + "个学员的成绩是"); aa[i] = Convert.ToDecimal(Console.ReadLine()); } Console.WriteLine("*****************************"); Console.WriteLine("一共有" + a + "个学员"); for (int i = 0; i < a; i++) { Console.WriteLine("第" + (i + 1) + "个学员的成绩是:" + aa[i] + ""); b += aa[i]; } decimal c = b / a; Console.WriteLine("总分是" + b + ",平均分是" + c); Console.WriteLine("*****************************"); decimal min = 100, max = 0; int aaa = 0, bbb = 0; for (int i = 0; i < a; i++) { if (min > aa[i]) { min = aa[i]; bbb = i + 1; } if (max < aa[i]) { max = aa[i]; aaa = i + 1; } } Console.WriteLine("最高分是第" + aaa + "个学员,成绩是" + max + "。最低分是第" + bbb + "个学员,成绩是" + min + "。"); } catch { Console.WriteLine("输入错误"); } Console.ReadLine();
运算结果
练习2
定义一个长度为10的int类型一维数组,
里面的值随意输入10个,然后让数组从大到小排列出来
int[] a = new int[10] { 1, 2, 4, 2, 1, 3, 2, 4, 4, 6 }; int b = 0; for (int i = 0; i < 10; i++) { for (int j = i + 1; j < 10; j++) { if (a[i] < a[j]) { b = a[i]; a[i] = a[j]; a[j] = b; } } } for (int i = 0; i < 10; i++) { Console.WriteLine(a[i]); } Console.ReadLine();
运算结果