从键盘输入一组数,不限多少,要求在控制台按从大到小输出。
这个问题要怎么分析它呢?
说说思路和知识点就好 。
谢谢啦 。
这个问题要怎么分析它呢?
说说思路和知识点就好 。
谢谢啦 。
解决方案 »
- WINFORM DataGridView翻页,DataGridView定位行,DataGridViewCheckBoxColumn勾选传值,实现报表打印问题
- IHTMLDocument使用的一个问题(可追加分的)
- 求获取打开页面所需时间,所占用的内存
- C#与Flash客户端TCP通讯的丢包问题
- 如何使用 C# 禁止Word快捷键 例如:Ctrl+S ...
- 如何收邮件??
- 请问在c#使用#region & #endregion复制后,粘贴到目标行时,每次都展开了,如何让它默认折叠
- 各位大哥,小弟菜,为什么读文本,中文字是乱码呀。
- 请问Emgu.CV 是不是 必须是net3.5的程序?
- 跪求TTS软件源码(源码要很完善)
- 关于随机取值的问题
- VS2005下使用Pocket PC 2003 项目的问题!!
{
//因为输入数据的长度不明确,所以常采用集合ArrayList,需引用命名空间System.Collections;
ArrayList list = new ArrayList();
int number = 0;
//利用while循环依次接受用户输入的数据。
while(true)
{
Console.WriteLine("请输入数字:");
//当用户输入end时,结束输入。
if(Console.ReadLine().ToLower().Equals("end"))
{
break;
}
//判断用户输入数据是否正确,若输出错误,则重新输入。
try
{
number = int.Parse(Console.ReadLine());
}
catch(Exception ex)
{
Console.WriteLine("您输入有误,请重新输入。");
continue;
}
//利用ArrayList的Add()方法将用户输入数据添加进ArryList集合。
list.Add(number);
}
//冒泡排序
for(int i = 0;i < list.Count - 1;i ++)
{
for(int j = 0;j < list.Count - 1 - i;j ++)
{
if(list[j] < list[j + 1])
{
int temp = list[j];
list[j] = list[j + 1];
list[j + 1] = temp;
}
}
} //打印出来
for(int i = 0;i < list.Count - 1;i ++)
{
Console.WriteLine(list[i]);
}}
冒泡排序详解:http://student.csdn.net/space.php?uid=623773&do=blog&id=41423
List<int> lst =new List<int>(){11,5,17,2,6};
lst.Sort();//这个是从小到大排序好了。
//你想从大到小输出,反过来输出就好了,你懂得。
{
char[] ch1 = str.ToCharArray();
char temp = new char();
for(int i=0;i<ch1.Length;i++)
{
for (int j = 0; j < i+1; j++)
{
if(ch1[i]<ch1[j])
{
temp = ch1[j];
ch1[j] = ch1[i];
ch1[i] = temp;
}
}
} foreach (char ch in ch1)
{
Console.WriteLine(ch);
}
Console.ReadKey();
} Bubber("asdfasdfasdf23452");
使用泛型装载那些数字,然后list.sort(new delegate(int a,int b){return b-a;})
就从大到小排序了。
{
for(int j = 0;j < list.Count - 1 - i;j ++)
{
if(list[j] < list[j + 1])
{
int temp = list[j];
list[j] = list[j + 1];
list[j + 1] = temp;
}
}
}
你好 冒泡排序里好像有些不对啊 if(list[j] < list[j + 1]) 无法比较大小啊
你好 冒泡排序里好像有些不对啊 if(list[j] < list[j + 1]) 无法比较大小啊