先上代码:
int[] a = new int[50];
int[] b = new int[50];
int n = 0;
int max = 0;
Random ra = new Random();
Console.WriteLine("下面为随机生成的50个数!!");
for (int i = 0; i < a.Length; i++)
{
a[i] = ra.Next(1, 1000);
}
foreach (int i in a)
{
Console.Write(i + " ");
}
Console.WriteLine();
Console.WriteLine("点击回车,重新按从大到小排列数组!!");
Console.ReadLine();
for (int i = 0; i < a.Length; i++)
{
for (int k = 0; k < 49; k++)
{
if (max <= a[k])
{
max = a[k];
n = k;
}
}
b[i] = max;
a[n] = -n;
}
Console.WriteLine("重新按从大到小顺序排列数字:");
foreach (int i in b)
Console.Write(i + " ");
Console.WriteLine();
foreach (int i in a)
Console.Write(i + " ");
Console.ReadLine();我的思路是
先随机出来50个数字(a[50])
第一轮 把50个数字中的最大数字找出来 =max 同时记住这个数字在数组中的位置n
再把max赋值给b[50] 的第一个 这样b[0]就为最大的数字 同时 把a[n]赋值为-n 这样a[n]就成为了最小的数字了
如此50轮
b[50]就是a[50]从大到小的排列了
int[] a = new int[50];
int[] b = new int[50];
int n = 0;
int max = 0;
Random ra = new Random();
Console.WriteLine("下面为随机生成的50个数!!");
for (int i = 0; i < a.Length; i++)
{
a[i] = ra.Next(1, 1000);
}
foreach (int i in a)
{
Console.Write(i + " ");
}
Console.WriteLine();
Console.WriteLine("点击回车,重新按从大到小排列数组!!");
Console.ReadLine();
for (int i = 0; i < a.Length; i++)
{
for (int k = 0; k < 49; k++)
{
if (max <= a[k])
{
max = a[k];
n = k;
}
}
b[i] = max;
a[n] = -n;
}
Console.WriteLine("重新按从大到小顺序排列数字:");
foreach (int i in b)
Console.Write(i + " ");
Console.WriteLine();
foreach (int i in a)
Console.Write(i + " ");
Console.ReadLine();我的思路是
先随机出来50个数字(a[50])
第一轮 把50个数字中的最大数字找出来 =max 同时记住这个数字在数组中的位置n
再把max赋值给b[50] 的第一个 这样b[0]就为最大的数字 同时 把a[n]赋值为-n 这样a[n]就成为了最小的数字了
如此50轮
b[50]就是a[50]从大到小的排列了
int[] b = new int[50];
int n = 0;
int max = 0;
Random ra = new Random();
Console.WriteLine("下面为随机生成的50个数!!");
for (int i = 0; i < a.Length; i++)
{
a[i] = ra.Next(1, 1000);
}
foreach (int i in a)
{
Console.Write(i + " ");
}
Console.WriteLine();
Console.WriteLine("点击回车,重新按从大到小排列数组!!");
Console.ReadLine();
for (int i = 0; i < a.Length; i++)
{
for (int k = 0; k < a.Length; k++)
{
if (max <= a[k])
{
max = a[k];
n = k;
}
}
b[i] = max;
a[n] = -n;
max = 0;
}
Console.WriteLine("重新按从大到小顺序排列数字:");
foreach (int i in b)
Console.Write(i + " ");
Console.WriteLine();
foreach (int i in a)
Console.Write(i + " ");
Console.ReadLine();
int[] b = new int[50];
int n = 0;
int max = 0;
Random ra = new Random();
Console.WriteLine("下面为随机生成的50个数!!");
for (int i = 0; i < a.Length; i++)
{
a[i] = ra.Next(1, 1000);
}
foreach (int i in a)
{
Console.Write(i + " ");
}
Console.WriteLine();
Console.WriteLine("点击回车,重新按从大到小排列数组!!");
Console.ReadLine();
for (int i = 0; i < a.Length; i++)
{
for (int k = 0; k < a.Length; k++)
{
if (max <= a[k])
{
max = a[k];
n = k;
}
}
b[i] = max;
a[n] = -n;
max = 0;
}
Console.WriteLine("重新按从大到小顺序排列数字:");
foreach (int i in b)
Console.Write(i + " ");
Console.WriteLine();
foreach (int i in a)
Console.Write(i + " ");
Console.ReadLine();
就是没把MAX给赋值为0.。。