任意输入5个整数,利用冒泡排序法排序(从大到小)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了任意输入5个整数,利用冒泡排序法排序(从大到小)相关的知识,希望对你有一定的参考价值。

#include <stdio.h>

main()

int a[6]; /*定义一个整型数组。*/

int i,j,temp; /*定义循环变量和中间变量。*/

for(i=0;i<5;i++) /*进行循环输入变量。*/

printf("please enter a number:\\n"); /*输出提示。*/

scanf("%d",&a[i]); /*输入变量赋值给数组变量。*/

for(i=0;i<5;i++) /*进行5次循环。*/

for(j=i+1;j<5;j++) /*循环比较剩余的变量。*/

if(a[i]<a[j]) /*如果前面一个数比后面数小,交换两个数的值。*/

temp=a[i];

a[i]=a[j];

a[j]=temp;

for(i=0;i<5;i++) /*循环输出排序以后的结果。*/

printf("%d ",a[i]);

扩展资料

#include <iostream>

#define N 5

using namespace std;     void bubble(int a[],int n)

for(int i=0;i<n;++i)

for(int j=0;j<n;++j)

if(a[i]< a[j])

int t=a[i];

a[i]=a[j];

a[j]=t;

                

int main()   

int arr[N];

int i=0; while(i!=N) //循环输入

//cout<<s<<endl;//调试用

cin>>arr[i];            

++i;

bubble(arr,N);

for(i=0;i!=N;++i)

cout<<arr[i]<<" ";

return 0;

参考资料:百度百科 - 冒泡排序

参考技术A #include <stdio.h>
main()

int a[6]; /*定义一个整型数组。*/
int i,j,temp; /*定义循环变量和中间变量。*/
for(i=0;i<5;i++) /*进行循环输入变量。*/

printf("please enter a number:\n"); /*输出提示。*/
scanf("%d",&a[i]); /*输入变量赋值给数组变量。*/

for(i=0;i<5;i++) /*进行5次循环。*/

for(j=i+1;j<5;j++) /*循环比较剩余的变量。*/

if(a[i]<a[j]) /*如果前面一个数比后面数小,交换两个数的值。*/

temp=a[i];
a[i]=a[j];
a[j]=temp;



for(i=0;i<5;i++) /*循环输出排序以后的结果。*/

printf("%d ",a[i]);

参考技术B int []group=2,3,4,5,6; for (int i = 0; i < group.length-1; i++)
//此循环每次找到一个最大值并放到数组的最后一位
for (int j = 0; j < group.length-i-1; j++)
//用第一个数(i)的值与 0到数组长度-i次循环(随循环变化)
//如果自己本身group[j] 比 自己后一位group[j+1]大则互换位置
if (group[j] > group[j + 1])
int h;
//互换位置
h = group[j];
group[j] = group[j + 1];
group[j + 1] = h;


//已经排好了
参考技术C #include <stdio.h>
main()

int a[5]; int i,j,dt; for(i=0;i<5;i++)
printf("please enter a number:\n"); scanf("%d",&a[i]);
for(i=0;i<5;i++)

for(j=i+1;j<5;j++)
if(a[i]<a[j])

temp=a[i];
a[i]=a[j];
a[j]=dt;



for(i=0;i<5;i++)
printf("%d ",a[i]);

[PTA]实验7-1-5 选择法排序

本题要求将给定的n个整数从大到小排序后输出。

输入格式:

输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。

输出格式:

在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。

输入样例:

4
5 1 7 6

输出样例:

7 6 5 1
  • 提交结果:

在这里插入图片描述

  • 源码:
#include<stdio.h>
int main(void)
{
	int array[10];
	int n;

	scanf("%d", &n);

	for (int i = 0; i < n; i++)   // 输入数据
	{
		scanf("%d", &array[i]);
	}

	for (int i = 0; i < n - 1; i++)   // n个数据,选择排序n-1次即可得出排序结果
	{
		for (int j = i + 1; j < n; j++)    // 从剩下的n-i个元素中查找
		{
			if (array[j] > array[i])   // 如果存在比array[i]大的数,则交换它们的值
			{
				int temp;
				temp = array[i];
				array[i] = array[j];
				array[j] = temp;
			}
		}
	}

	for (int i = 0; i < n; i++)   // 输出排序后的有序数组
	{
		printf("%d", array[i]);
		if (i != n - 1)    // 相邻数字间有一个空格,行末不得有多余空格。
		{
			printf(" ");
		}
	}

	return 0;
}

以上是关于任意输入5个整数,利用冒泡排序法排序(从大到小)的主要内容,如果未能解决你的问题,请参考以下文章

产生10个随机数,用冒泡法排序,从大到小输出(降序)

c语言:指针 用选择法对10个整数由大到小顺序排序

用Python写一个 输入10个数,从大到小排序,并输出前五个数据的和 输入 9 8 7 6 5 4 3 2 1 输出35?

[PTA]实验7-1-5 选择法排序

从键盘输入5个整数,按照其值从大到小排序 C语言数组做

C语言将一组数从大到小排序 只能移动相邻的数 并且要求步骤最小 怎么设计逻辑