使用插入法排序

#include <stdio.h>

int main(){
	int i,ipos,item;
	int a[10];
	printf("维数组元素赋值:\n");
	for(i=0;i<10;i++){
		printf("a[%d]=",i);
		scanf("%d",&a[i]);
	}
	
	//小到大排序
	for(i=1;i<10;i++){//循环数组中元素 
		item = a[i];//设置插入值 
		ipos=i-1;
		while(ipos>=0 && item<a[ipos]){//寻找值插入的位置 
			a[ipos+1]=a[ipos];//插入数值 
			ipos--;
		}
		a[ipos+1]=item;
	}
	//输出数组
	printf("排序后输出数组:\n");
	for(i=0;i<10;i++){
		printf("%d\t",a[i]);//输出制表位 
		if(i==4){//循环至第5个元素时 
			printf("\n");//换行输出 
		}
	} 
	return 0;
}

猜你喜欢

转载自blog.csdn.net/lwkliuwenkang/article/details/83242702