兄弟们 求帮助
#include <stdio.h>int main()
{
int a={1,2,3,4,5,6};
int max(int a,int i,int max);
int min(int a,int j,int min);
printf("最大值是%d, 最小值是%d",max,min);
}
int max(int a,int i,int max)
{
max=a>a?a:a;
for(i=2;i<6;i++)
{
max=max>a?max:a;
}
return max;
};
int min(int a,int j,int min)
{
min=a<a?a:a;
for(j=2;j<6;j++)
{
min=min<a?min:a;
}
return min;
};
我不知道问题在哪,麻烦你们了。
再给你一种方法:
#include <stdio.h>
int max(int *p);
int min(int *p);
int main()
{
int b={1,2,3,4,5,6};
int *p;
int i;
p=&b;
i=sizeof(b)/sizeof(b);//数组的个数,可以当做参数传入
printf("最大值是%d, 最小值是%d", max(p), min(p));
//printf("最大值是%d, 最小值是%d",max1,min1);
}
int max(int *p)
{
int max;
int i;
max=*p>(*p+1)?*p:*(p+1);
for(i=2;i<6;i++)
{
max=*p>(*p+i)?*p:*(p+i);
}
return max;
};
int min(int *p)
{
int min;
int j;
min=*p<(*p+1)?*p:*(p+1);
for(j=2;j<6;j++)
{
min=*p<(*p+j)?*p:*(p+j);
}
return min;
};
你传数组参数的时候出现错误了应该! 本帖最后由 565123 于 2013-12-8 21:43 编辑
#include <stdio.h>
int max(int a);
int min(int a);
int main()
{
int a = { 1, 2, 3, 4, 5, 6 };
int maxnum = max(a);
int minnum = min(a);
printf("最大值是%d, 最小值是%d", maxnum, minnum);
}
int max(int a)
{
int i, max;
max = a > a ? a : a;
for (i = 2; i<6; i++)
{
max = max>a ? max : a;
}
return max;
};
int min(int a)
{
int j, min;
min = a < a ? a : a;
for (j = 2; j < 6; j++)
{
min = min < a ? min : a;
}
return min;
}; 兄弟,下边是我写的代码,可以借鉴一下:
#include <stdio.h>
void main()
{
int i;
int max,min;
int a={1,2,3,4,5,6};
max=a;
min=a;
for (i=1;i<6;i++)
{
if (max<a)
{
max=a;
}
}
printf("%d\n",max);//输出最大值
for (i=1;i<6;i++)
{
if (min>a)
{
min=a;
}
}
printf("%d\n",min);//输出最小值
}
页:
[1]