插入后自动排序(掌握用穷举法进行比较、交换)的N-S流程图

如题所述

这应该是插入排序法,C语言实现如下:

#include<stdio.h>
void main()
{
int i,j,k,n,m,a[1000];
scanf("%d",&n);//输入元素的个数。
for(i=0;i<n;i++)
{
scanf("%d",&m);//输入第i+1个待排序的数。
for(j=i-1;(j>=0)&&(m<a[j]);j--);
for(k=i;k>j;k--)
a[k]=a[k-1];
a[j+1]=m;
}
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
}

样例输入:

10

16 13 41 51 12 42 79 951 34 65

样例输出:

12 13 16 34 41 42 51 65 79 951

其N-S图表示算法如下:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-29
int main()
{
int i,j,t,a[10];
printf("Please input 10 integers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++) /* 冒泡法排序 */
for(j=0;j<10-i-1;j++)
if(a[j]>a[j+1])
{t=a[j];/* 交换a[i]和a[j] */
a[j]=a[j+1];
a[j+1]=t;本回答被提问者采纳
第2个回答  2011-06-30
这个我不懂