黑马程序员技术交流社区

标题: 整型数组的冒泡排序 [打印本页]

作者: 丁艳姣    时间: 2012-10-24 16:28
标题: 整型数组的冒泡排序
int[] array={1,2,3,4,5};
int temp=0;
for(int i=0;i<array.length-1;i++)
{
for(int j=array.length-1;j>0;j++)
{
if(array[j]<array[j+1])
{
temp=array[j+1];
array[j+1]=array[j];
array[j]=temp;
}
}
console.writeline("array[j]");
为什么在循环语句里结果出来的是一个数而不是一串

}
作者: 李盛利    时间: 2012-10-24 18:24
本帖最后由 李盛利 于 2012-10-24 19:06 编辑

里边的嵌套的for循环写错了吧??应该是for(int j=0;j<array.lengj-1-i;j++)?            最后输出的不能带双引号“”                                                                                                                                                                                 
作者: 王继光    时间: 2012-10-24 18:27
nt[] array={1,2,3,4,5};
int temp=0;
for(int i=0;i<array.length-1;i++)     //从数组的第一个元素开始比较,比较的次数是数组的长度-1
{
for(int j=array.length-1;j>0;j++) //每一次比较的趟数 是当前  数组长度-1-比较次数  所以这里有点问题 应该改成  for(int j=0;j<array.Length-1-i;j++)
{
if(array[j]<array[j+1])
{
temp=array[j+1];
array[j+1]=array[j];
array[j]=temp;
}
}
console.writeline("array[j]"); //这里输出有问题  把变量放在 双引号里就当成 字符串输出去了 应该是 Console.WriteLine(array[j]);而且这里如果是Console.WriteLine(array[j]); 输出应该还会有问题 会找不到j 应为你j是局部变量 所以 要遍历数组 可以用 foreach

foreach( int k in array)
{
Console.Write(k + "   ");
}

作者: 985127948    时间: 2012-10-24 18:53
数组的输出必须套用一个for循环。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2