任意输入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]);
扩展资料
#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个整数,利用冒泡排序法排序(从大到小)的主要内容,如果未能解决你的问题,请参考以下文章
用Python写一个 输入10个数,从大到小排序,并输出前五个数据的和 输入 9 8 7 6 5 4 3 2 1 输出35?