min函数你如果返回*p的话,就需要把最小值放在第一个位置,a[i]是局部变量,你的p才是指向数组的指针。
main函数中调用min函数的时候,用min(p,5)就可以了,p前面的星号删掉
修改如下:
#include <iostream>
using namespace std;
void input(int a[],int n)
{
for(int i = 0;i<n;i++)
cin >> a[i];
}
int min(int*p,int n)
{
int i;
int mm = p[0];
for(i=0;i<n;i++,p++)
{
if(*p<mm)
mm = *p;
}
return mm;
}
int main(){
int a[5];
int*p =a;
input(p,5);
cout <<min(p,5)<<endl;
return 0;
}
调用min()时中p前面不要加*