c语言实现 选择排序 冒泡排序

因为临近期末,就随手复习了一波。

冒泡排序差点翻车了。看来还是要小心点。

选择排序

#include <stdio.h>

void print(int a[], int n)
{
	for (int i = 0; i < n; i++)
		printf("%d  ", a[i]);
	
	putchar('\n');
}
int main()
{
	int i, a[10];
	printf("请输入十个数按选择排序排序输出:\n");
	for (i = 0; i < 10; i++)
		scanf("%d", &a[i]);

	//选择排序核心
	for (i = 0; i < 9; i++)
	{
		int k = i;
		for (int j = i+1; j < 10; j++)
		{
			if (a[k] > a[j])  k =j;
		}
		if (a[i] != a[k]) {
			int temp = a[i];
			a[i] = a[k];
			a[k] = temp;
		}
		print(a, 10);
	}
	return 0;
}

冒泡排序

#include <stdio.h>

void print(int a[], int n)
{
	for (int i = 0; i < n; i++)
		printf("%4d", a[i]);

	putchar('\n');
}

int main()
{
	int i, a[10];
	printf("请输入十个数字按冒泡排序输出:\n");
	for (i = 0; i < 10; i++)
		scanf("%d", &a[i]);
	
	//冒泡排序核心思想
	for (i = 0; i < 9; i++)
	{
		for(int j=0;j<9;j++)    //差点翻车
			if (a[j] > a[j + 1])
			{
				int temp = a[j];
				a[j] = a[j + 1];
				a[j + 1] = temp;
			}
		printf("第%d趟排序:", i+1);
		print(a, 10);
	}
	return 0;
}


好了,得去复习英语了。哈哈哈哈哈

期末考加油

猜你喜欢

转载自blog.csdn.net/sinat_40477296/article/details/79038953