用指针变量作函数形参接收数组地址
[cpp]
/*
* Copyright (c) 2012, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作者:樊露露
* 完成日期:2012 年12月16日
* 版本号:v1.0
*
* 输入描述:无
* 问题描述:用指针作形参给数组排序
* 程序输出:数组
* 问题分析:
* 算法设计:略
*/ www.zzzyk.com
#include<iostream>
using namespace std;
int main(){
void select_sort(int *p,int n);//定义函数
int a[10]={5,8,6,97,1,3,4,87,13,19},i;
select_sort(a,10); //引用函数
cout<<"排序后的数组为:"<<endl;
for(i=0;i<10;i++) //输出函数
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
//排序函数代码
void select_sort(int *p,int n)//用指针变量作形参
{
int i,j,t,k;
//i的循环(第一层循环)从0开始,这是理所当然的。到n-2结束,因为到n-2时与n-1比较过,就不用循环到n了。
for(i=0;i<n-1;i++){
//将i赋值给k,使下面的排序从i开始,i前面已经排好的不用管了。
k=i;
//j的循环(第二层循环)从i+1开始,到n-1结束。排序要逐个的比较。
for(j=i+1;j<n;j++)
//如果后一个数大于前一个数,将j赋值给k
if(*(p+j)>*(p+k))
k=j;。
//排序,用指针来接收数组地址。
t=*(p+k);
*(p+k)=*(p+i);
*(p+i)=t;
}
}
补充:软件开发 , C++ ,