c语言程序设计用指向指针的方法对n个整数排序?
要求将排序单独写一个函数,n个整数在主函数中输入,最后输出C语言指针问题:用指向指针的指针方法对n个整数排序并输出。要求将排序单独写成一个函数。...
要求将排序单独写一个函数,n个整数在主函数中输入,最后输出
C语言指针问题:用指向指针的指针方法对n个整数排序并输出。要求将排序单独写成一个函数。 展开
C语言指针问题:用指向指针的指针方法对n个整数排序并输出。要求将排序单独写成一个函数。 展开
2个回答
展开全部
#include"iostream.h"
void sort(int*p,int n)
{
int m,i,j,t;
for(i=0;i<n-1;i++)
{
m=i;
for(j=i+1;j<n;j++)
if( *(p+j) < *(p+m) )
m=j;
t=*(p+i),*(p+i)=*(p+m),*(p+m)=t;
}
}
void main()
{
int i,n,*p;
cout<<"输入n"<<endl;
cin>>n;
p=new int[n];
cout<<"输入"<<n<<"个int型数据"<<endl;
for(i=0;i<n;i++)
cin>>*(p+i);
for(i=0;i<n;i++)
cout<<*(p+i)<<"\t";
cout<<endl;
sort(p,n);
for(i=0;i<n;i++)
cout<<*(p+i)<<"\t";
cout<<endl;
}
void sort(int*p,int n)
{
int m,i,j,t;
for(i=0;i<n-1;i++)
{
m=i;
for(j=i+1;j<n;j++)
if( *(p+j) < *(p+m) )
m=j;
t=*(p+i),*(p+i)=*(p+m),*(p+m)=t;
}
}
void main()
{
int i,n,*p;
cout<<"输入n"<<endl;
cin>>n;
p=new int[n];
cout<<"输入"<<n<<"个int型数据"<<endl;
for(i=0;i<n;i++)
cin>>*(p+i);
for(i=0;i<n;i++)
cout<<*(p+i)<<"\t";
cout<<endl;
sort(p,n);
for(i=0;i<n;i++)
cout<<*(p+i)<<"\t";
cout<<endl;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
能否把问题描述地更清楚呢,用指向指针的方法?(是二级指针吗?)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询