C语言_冒泡排序

升序

i<n-1假设数组中有10个数,则比较9个,最后一个数不需要比较。i记录比较后确定位置的元素个数。

j<n-1-i前一个数和后一个数作比较,比较到确定位置个数的元素为止。

把条件判断语句中的a[j]>a[j+1]改为a[j]<a[j+1]即为降序排序。

#include <stdio.h>
#define SIZE 10
int main() {	
	int a[SIZE]={12,43,9,13,67,98,101,89,3,35};	
	int i,j,t;
	for(i=0;i<SIZE;i++){
		printf("%d ",a[i]);
	}
	printf("\n");	
	for(i=0;i<SIZE-1;i++){ 
		for(j=0;j<SIZE-1-i;j++){
			if(a[j]>a[j+1]){
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;
			}
		}
	}
	for(i=0;i<SIZE;i++){
		printf("%d ",a[i]);
	}
	printf("\n");	
	return 0;
}

猜你喜欢

转载自blog.csdn.net/sun2014moon/article/details/82735239
今日推荐