using System;
namespace lesson2_一维数组练习题
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("一维数组练习题");
#region 第一题
//请创建一个维数组并赋值, 让其值与下标一样,长度为100
/*int[] a = new int[100];
for (int i = 0; i < a.Length; i++)
{
a[i] = i;
}
for (int i = 0; i < a.Length; i++)
{
Console.WriteLine(a[i]);
}*/
#endregion
#region 第二题
//创建另一个数组b,让数组a中的每个元素的值乘以2存入到数组B中
/*int[] b=new int [100];
for (int i = 0; i < b.length; i++)
{
b[i] = 2 * a[i];
}
for (int i = 0; i < b.Length; i++)
{
Console.WriteLine(b[i]);
}*/
#endregion
#region 第三题
//随机(0~100) 生成1个长度为10的整数数组
/*int[] c = new int[10];
for (int i = 0; i < c.Length; i++)
{
Random rd = new Random();
int sjs = rd.Next(1, 100);
c[i] = sjs;
}
for (int i = 0; i < c.Length; i++)
{
Console.WriteLine(c[i]);
}*/
#endregion
#region 第四题
//从一个整数数组中找出最大值、最小值、总和、平均值(可以使用随机数1~100)
/*int[] d = new int[10];
for (int i = 0; i < d.Length; i++)
{
Random rd = new Random();
int sjs = rd.Next(1, 100);
d[i] = sjs;
}
for (int j = 0; j < d.Length; j++)
{
for (int i = 0; i < d.Length-1-j; i++)
{
if (d[i] > d[i+1])
{
int x = 0;
x = d[i];
d[i] = d[i+1];
d[i+1] = x;
}
}
}//冒泡排序
for (int i = 0; i < d.Length; i++)
{
Console.Write(" "+d[i]);
}
int sum = 0;
for (int i = 0; i < d.Length; i++)
{
sum += d[i];
}//总和
float pingjun = (float)sum / d.Length;//平均值
Console.WriteLine("最小值为{0} 最大值为{1} 总合为{2} 平均值为{3}", d[0], d[9], sum, pingjun);*/
#endregion
#region 第五题
//交换数组中的第一个和最后一 个、第二个和倒数第二个,依次类推,把数组进行反转并打印
/*int[] e = new int[10];
for (int i = 0; i < e.length; i++)
{
Random rd = new Random();
int sjs = rd.Next(1, 100);
e[i] = sjs;
}
int y = 0;
y = e[0];
e[0] = e[e.Length-1];
e[e.Length-1] = y;//交换第一个和倒数第一个
y = e[0];
e[0] = e[e.Length-1];
e[e.Length-1] = y;//交换第二个和倒数第二个
y = e[0];
e[0] = e[e.Length-1];
e[e.Length-1] = y;//交换第三个和倒数第三个
for (int i = 0; i < e.Length; i++)
{
Console.WriteLine(e[i]);
}//交换后显示
Console.WriteLine("**************");
for (int i = e.Length-1; i >=0; i--)
{
Console.WriteLine(e[i]);
}//数组反转后打印*/
#endregion
#region 第六题
//将一个整数数组的每一个元素进行如下的处理:
//如果元素是正数则将这个位置的元素值加1;
//如果元素是负数则将这个位置的元索值减1;
//如果元素是0,则不变
/*int[] f = new int[10];
for (int i = 0; i < f.Length - 1; i++)
{
Random rd = new Random();
int sjs = rd.Next(-100, 100);
f[i] = sjs;
}
for (int i = f.Length - 1; i >= 0; i--)
{
Console.WriteLine(f[i]);
}
Console.WriteLine("**************");
for (int i = f.Length - 1; i >= 0; i--)
{
if (f[i] > 0)
{
f[i] += 1;
}
else if (f[i] == 0)
{
continue;
}
else if (f[i] < 0)
{
f[i] -= 1;
}
}
for (int i = f.Length - 1; i >= 0; i--)
{
Console.WriteLine(f[i]);
}*/
#endregion
#region 第七题
//定义一个有10个元素的数组,使用for循环, 输入10名同学的数学成绩,将成绩依次存入数组,
//然后分别求出最高分和最低分,并且求出10名同学的数学平均成绩
/*float[] m = new float[10];
try
{
for (int i = 0; i < m.Length; i++)
{
Console.WriteLine("请输入第{0}个同学的数学成绩", i + 1);
m[i] = float.Parse(Console.ReadLine());
Console.WriteLine("**************");
}
}
catch
{
Console.WriteLine("请输入正确的成绩");
return ;
}
for (int j = 0; j < m.Length; j++)
{
for (int i = 0; i < m.Length - 1 - j; i++)
{
if (m[i] > m[i + 1])
{
float x = 0;
x = m[i];
m[i] = m[i + 1];
m[i + 1] = x;
}
}
}//冒泡排序
for (int i = 0; i < m.Length; i++)
{
Console.Write(" " + m[i]);
}
float sum = 0;
for (int i = 0; i < m.Length - 1; i++)
{
sum += m[i];
}
float pingjun = sum / m.Length;
Console.WriteLine("这10位同学最高分为{0} 最低分为{1} 平均数学成绩为{2}", m[m.Length - 1], m[0], pingjun);*/
#endregion
#region 第八题
//
#endregion
}
}
}