我刚开始学! 定义一个一维数组!用foreach给他从大到小排序! 5
3个回答
展开全部
foreach是取出每一个值,然后把这些值怎么样,至于排序还是得用for循环,也就是冒泡排序。
int[] a = new int[5] {10,20,30,40,50 };//定义一个数组
int temp; //临时变量,冒泡时存储临时值
for (int i = 0; i < a.Length-1; i++)
{
for (int j = 0; j < a.Length - 1-i; j++)
{
if (a[j] < a[j + 1])
{
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
每次取出数组的一个值,和数组中的数字相比较
文字解释不清楚,总体的思路是数组有n个值,就循环n-1次,最后一个数是不用比较的,因为所以比他小的都冒泡到后面去了,最后一个一定是最大的。
上面的是外循环,内循环:
取出第一个值,依次和数组内的值比较,一旦遇到比自己大的,他就与之交换在数组中的位置。
外循环n-1次后,顺序已经排好
int[] a = new int[5] {10,20,30,40,50 };//定义一个数组
int temp; //临时变量,冒泡时存储临时值
for (int i = 0; i < a.Length-1; i++)
{
for (int j = 0; j < a.Length - 1-i; j++)
{
if (a[j] < a[j + 1])
{
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
每次取出数组的一个值,和数组中的数字相比较
文字解释不清楚,总体的思路是数组有n个值,就循环n-1次,最后一个数是不用比较的,因为所以比他小的都冒泡到后面去了,最后一个一定是最大的。
上面的是外循环,内循环:
取出第一个值,依次和数组内的值比较,一旦遇到比自己大的,他就与之交换在数组中的位置。
外循环n-1次后,顺序已经排好
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
foreach只是对集合的元素来做循环,不是用来排序,使用foreach对集合的元素进行遍历之前,需要对集合的元素按一定顺序进行排列,默认情况下以元素添加的先后来排序。至于对集合元素的排序需要自己编写程序,并且在应用排序算法时是不好使用foreach的。
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for (int i = 0; i < arr.Length - 1; i++)
{
for (int j = 0; j < arr.Length - i-1; j++)
{
if (arr[j] > arr[j + 1])
{
long tem = arr[i];
arr[i] = arr[j];
arr[j] = tem;
}
}
}
{
for (int j = 0; j < arr.Length - i-1; j++)
{
if (arr[j] > arr[j + 1])
{
long tem = arr[i];
arr[i] = arr[j];
arr[j] = tem;
}
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询