指针作业2

#include <iostream>
using namespace std;
int main()
{
 void fun1(int*p,int n);
 void fun2(int*p,int n);
 void fun3(int*p,int n);
 void fun4(int*p,int n);
 void fun5(int*p,int n);
 void fun6(int*p,int n);
 int a[5],b[5];
 cout<<"请对数组元素进行输入:"<<endl;
 fun1(a,5);
 fun2(a,5);
 for(int i=0;i<5;i++)
  b[i]=a[i];
 fun3(a,5);
 fun4(a,5);
 fun5(a,5);
 fun6(b,5);
 cout<<endl;
 return 0;
}
void fun1(int*p,int n)
{
 for(int i=0;i<n;i++)
 {
  cin>>*(p+i);
 }
}
void fun2(int*p,int n)
{
 for(int i=0;i<n;i++)
 {
  cout<<*(p+i)<<" ";
 }
 cout<<endl;
}
void fun3(int*p,int n)
{
 int max=p[0];
 int t;
 for(int i=1;i<n;i++)
  if(p[i]>max)
   max=p[i];
 cout<<"该数组的最大值为:"<<max;
 cout<<endl;
}
void fun4(int*p,int n)
{
 int i,j,k,m;
 for(i=0;i<n-1;i++)
 {
  k=i;
  for(j=i+1;j<n;j++)
   if(p[j]>p[k]) k=j;
  m=p[k];
  p[k]=p[i];
  p[i]=m;
 }
 cout<<"经过选择法由大到小排序后数列变为:"<<endl;
 for(i=0;i<n;i++)
 {
  cout<<*(p+i)<<" ";
 }
 cout<<endl;
}
void fun5(int*p,int n)
{
 int i,j,m;
 for(j=0;j<=n-2;j++)
 {
  for(i=0;i<n-j;i++)
  {
   if(*(p+i)>*(p+i+1))
   {
    m=*(p+i);
    *(p+i)=*(p+i+1);
    *(p+i+1)=m;
   }
  }
 }
 cout<<"经过冒泡法由小到大排序后序列变为:"<<endl;
 for(i=0;i<n;i++)
  cout<<*(p+i)<<" ";
 cout<<endl;
}
void fun6(int*p,int n)
{
 cout<<"该数组经过你想存储后该数列变为:"<<endl;
 for(int i=n-1;i>=0;i--)
 {
  cout<<*(p+i)<<" ";
 }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值