//*******************10个数字从大到小排序************************//
#include<iostream>
#include<stdio.h>
using namespace std;
void main(void)
{
void pai_xu(int a[],int n);//声明,注意这里参数类型哦!你当时没写int ,int 所以调试不出来
int i,j;
int a[10];//用来存数字
for(i=0;i<10;i++)
{
printf("输入第%d个数:",i+1);
scanf("%d",&a[i]);//只能单个存入数据
}
pai_xu(a,10);//一种是调到另一个数组中排序,还有一种是直接在原数组中排序
printf("从大到小排序结果为:");
for(j=0;j<10;j++)
{
printf("%d ",a[j]);
}
cout<<endl;
}
//*****************冒泡排序法*********************************//
void pai_xu(int a[],int n)//这里应该有数组中的数据输入,才能进行排序,括号里的形参是什么?????
{
int i,j;
// int a[10];//把实参的数据存进去
int temp;
for(j=0;j<n;j++)//0~n-1共执行n次
{
for(i=0;i<n-1;i++)//0~n-2共执行n-1次
{
if(a[i]<a[i+1])//现在要从大到小排序,那就把小的排在后面
{
temp=a[i]; //只是用来交换两个值
a[i]=a[i+1];
a[i+1]=temp;
}
}
}
}
//程序结果显示,只能排前10个数
小结:无论是从小到大,还是从大到小,关键是判断该把大数往后存,还是把小数往后存