C#冒泡排序法,for语句转换成while语句
答案:1 悬赏:60 手机版
解决时间 2021-03-31 18:11
- 提问者网友:难遇难求
- 2021-03-30 20:55
C#冒泡排序法,for语句转换成while语句
最佳答案
- 五星知识达人网友:大漠
- 2021-03-30 21:29
冒泡排序的重点在这里:
for(i=1;i for(j=0;j if(a[j]>a[j+1])
{t=a[j];a[j]=a[j+1];a[j+1]=t;}
转换为while语句为:
int i, j;
i = 1; j = 0;
while (i < N )
{
while ( j < N-1 )
{
if ( a[j] > a[j+1] )
{ t=a[j];a[j]=a[j+1];a[j+1]=t; }
j++;
}
i++;
}
其实,绝大部分的while和for都可以互换,它们只是while和for后括号内的东西有所不同而已,循环体都是一样的,另外,循环变量的改变要放在循环中,仅此而已追问其他的不用转换吗?追答是要把所有的for都转换成while吗?
那么,第一个for转换为:
int i = 0; //对数组赋值随机数
while ( i < N )
{
a[i]=rand0bj.Next(10,99);
i++;
}
第二个for转换为:
int i = 0; //输出数组
while ( i < N )
{
Response.Write(" ";a[i].ToString());
i++;
}
最后一个for也是输出数组,跟第二个一样
for(i=1;i
{t=a[j];a[j]=a[j+1];a[j+1]=t;}
转换为while语句为:
int i, j;
i = 1; j = 0;
while (i < N )
{
while ( j < N-1 )
{
if ( a[j] > a[j+1] )
{ t=a[j];a[j]=a[j+1];a[j+1]=t; }
j++;
}
i++;
}
其实,绝大部分的while和for都可以互换,它们只是while和for后括号内的东西有所不同而已,循环体都是一样的,另外,循环变量的改变要放在循环中,仅此而已追问其他的不用转换吗?追答是要把所有的for都转换成while吗?
那么,第一个for转换为:
int i = 0; //对数组赋值随机数
while ( i < N )
{
a[i]=rand0bj.Next(10,99);
i++;
}
第二个for转换为:
int i = 0; //输出数组
while ( i < N )
{
Response.Write(" ";a[i].ToString());
i++;
}
最后一个for也是输出数组,跟第二个一样
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯