//动态数组+随机数,求max和min//11-99: rand()%89+11--->[0,88]+11#include<stdio.h>#include<stdlib.h>#include<time.h>intdistribute(int*,int*);//动态分配空间voidfind(int*,int);//找 intmain(){int n =0;//长度 int*a,*p;int flag =1;
flag=distribute(&n,a);
p = a;for(int i=0;i<n;i++)
a[i]=rand()%88+11;
a = p;printf("动态数组内容为:");for(int i=0;i<n;i++)printf("%4d",a[i]);if(flag)find(a,n);elseprintf("未能成功分配空间,所以程序不运行\n");return0;}intdistribute(int*length,int*a){scanf("%d",length);printf("Input n:%d",*length);printf("\n");//(类型*)malloc(个数*字节数); //动态分配n个元素的存储空间
a =(int*)malloc(*length*sizeof(int));if(a==NULL){printf("内存分配失败!");return0;}elsereturn1;}voidfind(int*p,int n){printf("\n");int i,j;int max,min;
max =*p;
min =*p;for(i=1;i<n;i++){if(max<p[i])
max = p[i];if(min>p[i])
min = p[i];}printf("最大值:%d, 最小值:%d\n",max,min);}