输入一组数据存入数组中,并将数据元素的个数动态地由输入函数完成。求输入数据的最大值、最小值,并通过函数参数返回所求结果

	输入一组数据存入数组中,并将数据元素的个数动态地由输入函数完成。求输入数据的最大值、最小值,并通过函数参数返回所求结果;
	问题分析:输入一组数据存入数组中,数据动态输入,就预示着要动态空间分配(指针的使用,malloc,free函数的运用),求最大最小值,可能要用到for循环和if语句判断;
//输入一组数据,放到数组中,数据元素个数动态的由输入函数完成,
//求输入数据的最大值、最小值,并通过函数参数返回所求结果
#include<stdio.h>
#include<stdlib.h>

int* DyArray(int **pDyArray,int n)
{
	*pDyArray=(int*)malloc(n*sizeof(int));
	return *pDyArray;	
} 
void InputDyArray(int *pDyArray,int n)
{
	int i;
	for(i=0;i<n;i++)
	{
		printf("please input number %d: ",i);
		scanf("%d",&pDyArray[i]);
	}
	return; 
}
void 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;
}
void 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;
}
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值