#include<stdio.h>
void (max_min)
int a[],int n;
int (*maxp,int *minp);
{
int i;
*maxp=a[0];
*minp=a[0];
for(i=1;i<=n-1;i++)
{
if(a[i]>=*maxp)
*maxp=a[i];
else if
(a[i]<*minp) *minp=a[i];
}
}
int main()
{
int a[100],n,i,max,min;
printf("please input n:");
scanf("%d",&n);
printf("please in put number :");
for(i=0;i<=n-1;i++);
scanf("%d",&a[i]);
max_min(a,n,maxp,minp);
printf("the max and min is :%d&%d\n",maxp,minp);
return 0;
}
这个那里出了错误?????????谢谢改正!
#include<stdio.h>
//max_min函数定义太乱了,应该是这样的:
void max_min(int a[],int n,int *maxp,int *minp)
{
int i;
*maxp=a[0];
*minp=a[0];
for(i=1;i<=n-1;i++)
{
if(a[i]>=*maxp)
*maxp=a[i];
else if (a[i]<*minp)
*minp=a[i];
}
}
int main()
{
int a[100],n,i,max,min;
printf("please input n:");
scanf("%d",&n);
printf("please in put number :");
for(i=0;i<=n-1;i++)//去掉分号
scanf("%d",&a[i]);
max_min(a,n,&max,&min); //应该是传变量地址,max_min(a,n,maxp,minp);
printf("the max and min is :%d&%d\n",max,min); //maxp,minp没定义,应该是max,min
return 0;
}
结果: