新手多多包含,大家有什么指点多多评论呀!
输入一组数据,放到数组中,数据元素个数动态的由输入函数完成,求输入数据的最大值、最小值,并通过函数参数返回所求结果
#include<stdio.h>
#include<stdlib.h>
int* DyArray(int **pDyArray,int n)//动态分配空间
{
*pDyArray=(int*)malloc(n*sizeof(int));
return *pDyArray;
}
int InputDyArray(int *pDyArray,int n)//输入一个动态数组
{
int i;
for(i=0;i<n;i++)
{
printf("please input number %d: ",i);
scanf("%d",&pDyArray[i]);
}
return;
}
int MaxMin(int *pDyArray,int n,int *Max,int *Min)//求最大值、最小值
{
int i;
*Max=*pDyArray;
*Min=*pDyArray;
for(i=1;i<n;i++)
{
if(*Max<pDyArray[i])
{
*Max=pDyArray[i];
}
if(*Min>pDyArray[i])
{
*Min=pDyArray[i];
}
}
return;
}
int Output(int *pDyArray,int n,int Max,int Min)//输出最大值、最小值
{
printf("max=%d ",Max);
printf("min=%d ",Min);
return;
}
int* Destroy(int *pDyArray)//销毁分配的空间
{
if(pDyArray)
{
free(pDyArray);
}
return NULL;
}
int main()
{
int i,n,min,max,*pDyArray;
printf("please input n: ");
scanf("%d",&n);
DyArray(&pDyArray,n);
InputDyArray(pDyArray,n);
MaxMin(pDyArray,n,&max,&min);
Output(pDyArray,n,max,min);
Destroy(pDyArray);
return 0;
}