list<int> orderbylooping = new list<int>(); orderbylooping.addrange(new int[] { 6, -2, 5, 3 }); list<int> orderbylooping(list<list<int>> p3) { list<int> result = new list<int>(); for (int i = 0; i < p3.count; i++) { for (int j = i + 1; j < p3.count; j++) { if (p3[i] > p3[j]) { } } } } for (int i = 0; i < orderbylooping.count; i++) { for (int j = i + 1; j < orderbylooping.count; j++) { if (orderbylooping[i] > orderbylooping[j]) { int temp = orderbylooping[i]; orderbylooping[i] = orderbylooping[j]; orderbylooping[j] = temp; } } } console.writeline(string.join(",", orderbylooping)); 修改代码
时间: 2024-03-20 17:41:38 浏览: 37
C# List<T>用法
代码中存在一些问题,例如 orderbylooping 函数没有返回值,循环中的比较操作也存在问题。以下是改进后的代码:
```
List<int> OrderByLooping(List<int> p3)
{
for (int i = 0; i < p3.Count; i++)
{
for (int j = i + 1; j < p3.Count; j++)
{
if (p3[i] > p3[j])
{
int temp = p3[i];
p3[i] = p3[j];
p3[j] = temp;
}
}
}
return p3;
}
List<int> orderByLooping = new List<int> { 6, -2, 5, 3 };
orderByLooping = OrderByLooping(orderByLooping);
Console.WriteLine(string.Join(",", orderByLooping));
```
改进后的代码可以对传入的列表进行排序,并返回排序后的结果。同时,使用了 var 关键字来简化代码,以及使用 string.Join() 方法来将列表中的元素拼接成一个字符串。
阅读全文