|
C++为例:这例中用到外部静态数组,也可以不用,用参数传递的方法。
|
#include<iostream.h>
|
|
static int
age[5]={21,18,20,17,19};
|
|
void main()
|
|
{
|
|
void
sort_age(); //函数原形声明
|
|
void
prt_age(); //函数原形声明
|
|
sort_age();
|
|
prt_age();
|
|
}
|
|
void
sort_age() //冒泡实现函数
|
|
{
|
|
extern int
size; //引用性声明
|
|
size=sizeof(age)/2
//计算数组大小
|
|
for(int
i=1;i<=size-1;i++)
|
|
for(int j=0;j<=size-i;j++)
|
|
if(age[j]>age[j+1])
|
|
{
|
|
int temp;
|
|
temp=age[j];
|
|
age[j]=age[j+1];
|
|
age[j+1]=temp;
|
|
}
|
|
}
|
|
void prt_age()
|
|
{
|
|
extern int
size; //引用性声明
|
|
for(int
i=0;i<size;i++)
|
|
cout<<"age["<<i<<"]:"<<age[i]<<endl;
|
|
}
|
|
int
size //定义性声明
|
|
|
C语言为例:注意哦:本例a[0]不用,只用a[1]~a[10],以符合人们的习惯,所以定义为a[11]。
|
main()
|
|
{
|
|
int a[11];
|
|
int i,j,k;
|
|
printf("intput
10 numbers:\n");
|
|
for(i=1;i<11;i++)
|
|
scanf("%d",&a[i]);
|
|
printf("\n");
|
|
for(i=1;i<=9;i++)
|
|
for(j=1;j<=10-i;j++)
|
|
if(a[j]>a[j+1])
|
|
{
|
|
k=a[j];a[j]=a[j+1];a[j+1]=k;
|
|
}
|
|
printf("the
sorted numbers:\n");
|
|
for(i=1;i<11;i++)
|
|
printf("%d ",a[i]);
|
|
}
|
|