发布时间:2019-07-29 18:47:02
设计完整的程序实现以下功能:一个数组中有10个元素{1,8,10,2,-5,0,7,15,4,-5},利用指针作为函数参数,输出组中最大值和最小值及其下标。
程序及测试结果(输出格式自己修改下)
#include<stdio.h>
voidhanshu(int*arry,intsize,int*m,int*n)
{
*m=arry[0];
*n=arry[1];
for(inti=0;i<size;i++)
{
if(arry[i]>*m)
*m=arry[i];
if(arry[i]<*n)
*n=arry[i];
}
}
intmain(intargc,constchar*argv[]){。
inta[]={1,5,6,2,3,8,9,7,4,5};//定义一个十个数据的数组
intmax;//存放最大值
intmin;//存放最小值
hanshu(a,10,&max,&min);//函数传送数组,并将最大值,最小值的地址传送
printf("Themaxnumberis%d\n",max);
printf("Theminnumberis%d\n",min);
return0;
}
#include <stdio.h>
int len;
int fun(int *p,int len)
{
int max = *p;
int min = *p;
int i;
for(i = 0;i < len;i ++)
{
if(max < *p)
max = *p;
if(min > *p)
min = *p;
p++;
}
printf("max = %d min = %d\n",max,min);
}
int main()
{
int a[] = {1,3,5,2,7,8,9,10};
len = sizeof(a)/sizeof(int);
fun(a,len);
return 0;
}