C# 一维数组

今天,我主要学习了一维数组的有关内容。

定义一维数组:int [] 变量名=new int [n];例如:int [] array=new int [5];需要注意的是,数组中元素的索引号是从0开始的。

今日,针对一维数组的内容,我主要进行了以下几个小练习:

例:根据班级人数创建一个数组,要求每个人的姓名都要放进去

Console.Write("请输入班级人数:");

int n = int.Parse(Console.ReadLine());

string[] name = new string[n];

for (int i = 0; i < n; i++)

{

Console.Write("请输入第{0}个人的姓名:", i + 1);

name[i] = Console.ReadLine();

}

Console.WriteLine("所有人员姓名输入完毕,请按回车键查看所有人员姓名!");

Console.ReadLine();

Console.WriteLine();

for (int i = 0; i < n; i++)

{

Console.Write(name[i] + "\t");

}

Console.ReadLine();

例:冒泡排序

for (int i = 0; i < n; i++)

{

for (int j = i; j < n - 1; j++)

{

if (age[i] < age[j + 1])

{

int zhong = age[i];

age[i] = age[j + 1];

age[j + 1] = zhong;

}

}

}

例:输入班级人数,输入每个人的分数,求总分、平均分、两个最高分,两个最低分

Console.Write("请输入班级的人数");

int n = int.Parse(Console.ReadLine());

double[] b = new double[n];

double fen = 0;

for (int i = 0; i < n; i++)

{

Console.Write("请输入{0}的分数:", i + 1);

b[i] = double.Parse(Console.ReadLine());

fen += b[i];

}

Console.WriteLine(fen);

Console.WriteLine(fen / n);

for (int i = 0; i < n; i++)

{

for (int j = i; j < n - 1; j++)

{

if (b[i] < b[j + 1])

{

double zhong = 0;

zhong = b[j + 1];

b[j + 1] = b[i];

b[i] = zhong;

}

}

}

Console.WriteLine("两个最高分:" + b[0] + "\t" + b[1]);

Console.WriteLine("两个最低分:" + b[n - 1] + "\t" + b[n - 2]);

Console.ReadLine();

例:随机生成10个不相同的,100以内的数放入数组

int[] array = new int[10];

Random ran = new Random();

for (int i = 0; i < 10; i++)

{

bool b = true;

int a = ran.Next(100);

for (int j = 0; j < i; j++)

{

if (a == array[j])

{

b = false;

i--;

j = 1000;

}

}

if (b == true)

{

array[i] = a;

}

}

for (int i = 0; i < 10; i++)

{

Console.Write(array[i]+"\t");

}

Console.WriteLine();

for (int i = 0; i < 10; i++)

{

for (int j = i; j < 9; j++)

{

if (array[i] > array[j + 1])

{

int zhong = array[i];

array[i] = array[j + 1];

array[j + 1] = zhong;

}

}

}

for (int i = 0; i < 10; i++)

{

Console.Write(array[i] + "\t");

}

Console.ReadLine();

例:滚动显示

for (int i = 0; i < 50; i++)

{

Console.Clear();//清屏

int a = ran.Next(10);

Console.WriteLine(array[a]);

//暂停100毫秒,0.1秒

System.Threading.Thread.Sleep(100);

}

Console.ReadLine();