C语言:从键盘输入十个数字进行排序(冒泡,选择,插入)

2023-05-16

不太理解插入排序,可参考此人博客较为详细:https://blog.csdn.net/qq2071114140/article/details/80428472 

方法一:冒泡排序

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main(){
	int i = 0, j = 0, m = 0;
	int arr[] = {0};
	printf("请输入三个数: ");
		for (i = 0; i < 3; i++) {
			scanf("%d", &arr[i]);
		}
	for (i = 0; i < 2; i++) {
		for (j = 0; j < 2- i; j++) {
			if (arr[j] > arr[j+1]) {
				m = arr[j];
				arr[j+1] = arr[j];
				arr[j] = m;
			}
		}

	}
	printf("该数组从大到小的排列顺序为:");
	for (i = 0; i < 3; i++) {
		printf("%d ", arr[i]);
	}
	system ("pause");
 return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
	int a[10] = {0};
	int i = 0, j = 0,  k = 0;  
	printf("请输入十个数字");
	for (i = 0; i < 10; i++) {
		scanf("%d", &a[i]);
	}
	for (i = 0; i < 10 - 1; ++i) {           //比较10-1轮
		for (j = 0; j < 10- 1 - i; ++j) {   //每轮比较10-1-i次,
			if (a[j] < a[j + 1]) {
				k = a[j];
				a[j] = a[j + 1];
				a[j + 1] = k;
			}
		}
	}
	printf("该十个数字从小到大依次排列顺序:");
	for (i = 0; i < 10; ++i) {
		printf("%d  ", a[i]);
	}
	printf("\n");
	system("pause");
	return 0;
}

方法二:选择排序

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
	int a[10] = { 0 };
	int  i = 0, j = 0, k = 0;
	printf("请输入10个数字: ");
		for (i = 0; i < 10; ++i) {
			scanf("%d",&a[i]);
		}
	for (i = 0; i < 10 - 1; ++i)
	{
		for (j = i + 1; j < 10; ++j)
		{
			if (a[i] > a[j])
			{
				k = a[i];
				a[i] = a[j];
				a[j] = k;
			}
		}
		
	}
	printf("该十个数字从小到大依次排列顺序:");
	for (i = 0; i < 10; ++i) {
		printf("%d  ", a[i]);
	}
	printf("\n");
	system("pause");
	return 0;
}

方法三:插入排序

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
	int i, j, t;
	int a[10] = { 0 };
	printf("请输入10个整数: ");
	for (i = 0; i < 10; ++i) {
		scanf("%d", &a[i]);
	}
	for (i = 1; i < 10; ++i) {
		t = a[i];
		for (j = i - 1; j > -1 && a[j] > t; j--) {
			a[j + 1] = a[j];
		}
		a[j + 1] = t;
	}
	for (i = 0; i < 10; ++i) {
		printf("%d ", a[i]);
	}
	system("pause");
	return 0;
	
}

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言:从键盘输入十个数字进行排序(冒泡,选择,插入) 的相关文章

随机推荐