概述
#include <stdio.h>
void list(int a[],int l,int m,int n)
{
int i,j, temp;
for(i=0;i<n;i++)//这里到n就行,不用到l-1;
{
for(j=m;j<n;j++)
//这里为啥是n,因为中间包含2,j+1就算到下标为3了;如果=那么就多一位比较;
{
if(a[j]>a[j+1])
//如果前面的数大,就交换;所以是升序;
//但是j从m到n之后也只能把最大的移动到最后的位置
//所以要再加上一层循环
{
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
}
int main()
{
int k,num[10];
int x,y;
for(k=0;k<10;k++)
{
scanf("%d",&num[k]);
}
scanf("%d%d",&x,&y);
list(num,10,x,y);
for(k=0;k<10;k++)
{
printf("%d ",num[k]);
}
return 0;
}
33 22 11 20 8 2 12 15 18 19
1 3
33 11 20 22 8 2 12 15 18 19
最后
以上就是无语早晨为你收集整理的对数组下标 m 和 n 之间的数按照升序排序的全部内容,希望文章能够帮你解决对数组下标 m 和 n 之间的数按照升序排序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复