C#-从入门到精通-第7章 数组和集合(2)
【数组的基本操作】
1.一维数组的输入和输出
int[] arr = new int[100];//定义一个有100个数的数组
for(int i=0;i<100;i++)
{
arr[i] = i + 1;//输入100个数
}
for(int i=0;i<arr.Length;i++)
{
Console.WriteLine(arr[i]);//输出数组中的数
}
Console.ReadLine();
2.二维数组的输入和输出
Console.WriteLine("请输入班级学生的总数:");
int num = Convert.ToInt32(Console.ReadLine());
int[,] arr = new int[num, 4];
for(int i=0;i<num;i++)
{
//向二维数组输入数据
Console.WriteLine("请输入第{0}个学生的编号:" ,i + 1);
arr[i, 0] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入语文成绩:");
arr[i, 1] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入数学成绩:");
arr[i, 2] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入英语成绩:");
arr[i, 3] = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("学生各科成绩如下:");
Console.WriteLine("编号\t语文成绩\t数学成绩\t英语成绩\t平均成绩\t总成绩");
for(int i=0;i<arr.GetLength(0);i++)
{
double sum = 0, ave = 0;
for(int j=0;j<arr.GetLength(1);j++)
{
Console.Write(arr[i, j]+ "\t\t");
if(j>0)
{
sum += arr[i, j];
}
}
ave = sum / 3;
Console.Write(ave + "\t\t" + sum + "\n");
}
Console.ReadLine();
3.foreach遍历数组
int[] arr = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
foreach(int a in arr)
{
Console.WriteLine(a);
}
Console.ReadLine();
4.数组的排序
使用array类的sort方法和reverse方法;
sort方法将数组从小到大排序;
reverse方法将数组反转排序;
如果要将数组逆向排序(从大到小),就先sort再reverse;
//sort
int[] arr = { 80,50,6,97,3,5 };
Array.Sort(arr);
foreach (int a in arr)
{
Console.WriteLine(a);
}
Console.ReadLine();
//reverse
int[] arr = { 80,50,6,97,3,5 };
Array.Reverse(arr);
foreach (int a in arr)
{
Console.WriteLine(a);
}
Console.ReadLine();
//sort和reverse实现从大到小排序
int[] arr = { 80,50,6,97,3,5 };
Array.Sort(arr);
Array.Reverse(arr);
foreach (int a in arr)
{
Console.WriteLine(a);
}
Console.ReadLine();