用c#编写一段程序,随机生成10个0到100之间的互不相同的整数,存放在一维数组中,输出所有元素,
用c#编写一段程序,随机生成10个0到100之间的互不相同的整数,存放在一维数组中,输出所有元素,并求出最大数和最小数,以及最大数和最小数对应的数组元素下标...
用c#编写一段程序,随机生成10个0到100之间的互不相同的整数,存放在一维数组中,输出所有元素,并求出最大数和最小数,以及最大数和最小数对应的数组元素下标
展开
1个回答
展开全部
见以下程序
using System;
using System.Collections.Generic;
using System.Linq;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int[] a = Generate();
Print(a);
int max = Max(a);
int indexOfMax = IndexOfMax(a);
Console.WriteLine("Max={0}, Index={1}", max, indexOfMax);
int min = Min(a);
int indexOfMin = IndexOfMin(a);
Console.WriteLine("Min={0}, Index={1}", min, indexOfMin);
}
/// <summary>
/// 随机生成10个0到100之间的互不相同的整数
/// </summary>
/// <returns></returns>
static int[] Generate()
{
HashSet<int> s = new HashSet<int>();
Random rnd = new Random();
while (s.Count < 10)
{
s.Add(rnd.Next(0, 100));
}
return s.ToArray();
}
/// <summary>
/// 输出所有元素
/// </summary>
/// <param name="a"></param>
static void Print(int[] a)
{
foreach (int v in a)
{
Console.WriteLine(v);
}
}
/// <summary>
/// 并求出最大数
/// </summary>
/// <param name="a"></param>
/// <returns></returns>
static int Max(int[] a)
{
int v = a[0];
for (int i = 1; i < a.Length; i++)
{
if (v < a[i]) v = a[i];
}
return v;
}
/// <summary>
/// 并求出最小数
/// </summary>
/// <param name="a"></param>
/// <returns></returns>
static int Min(int[] a)
{
int v = a[0];
for (int i = 1; i < a.Length; i++)
{
if (v > a[i]) v = a[i];
}
return v;
}
/// <summary>
/// 最大数对应的数组元素下标
/// </summary>
/// <param name="a"></param>
/// <returns></returns>
static int IndexOfMax(int[] a)
{
int v = a[0];
int index = 0;
for (int i = 1; i < a.Length; i++)
{
if (v < a[i])
{
v = a[i];
index = i;
}
}
return index;
}
/// <summary>
/// 最小数对应的数组元素下标
/// </summary>
/// <param name="a"></param>
/// <returns></returns>
static int IndexOfMin(int[] a)
{
int v = a[0];
int index = 0;
for (int i = 1; i < a.Length; i++)
{
if (v > a[i])
{
v = a[i];
index = i;
}
}
return index;
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |