该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
前面已经有一道类似的题目为这道题做铺垫,我已经做出来啦。前面的题目是这样的:用选择法对10个数进行排序。
我的做法,就是一个个对比扫描,从左到右递增。代码如下:
#include
#define N 10
int main ()
{
int array[N];
int i,j,k,temp; // i 为基准位置,j 为当前被扫描元素位置,k 用于暂存出现的较小的元素的位置
for (i = 0; i <=9; i++)
scanf ("%d", &array[i]);
for (i=0;i<9;i++)//从第一个元素左到右扫描。
{ k=i;//初始化为基准位置
for(j=i+1;j<9;j++)
{
if (array[j]
{ temp=array[j];
array[j]=array[k];
array[k]=temp;
}// 将此趟扫描得到的最小元素与基准互换位置
}
}
for (i = 0; i <= 9; i++)
printf ("%3d", array[i]);
printf ("\n");
}
那么遇到这道题,我是这么想的。我先给一个10个元素的数组赋值并递增,然后用键盘添加一个数