练习:要求在堆区申请5个double类型的空间,用于存储5名学生的成绩。请自行封装函数完成
#include <iostream>
using namespace std;
double * fun1(int num)
{
double *p1 = new double[num];
if(p1 == NULL)
{
return NULL;
}
for(int i=0;i<num;i++)
{
*(p1+i) = 0;
}
return p1;
}
void fun2(double *p2,int a)
{
for(int i=0;i<a;i++)
{
cout<<"请输入第"<<i+1<<"个学生成绩:";
cin>>*(p2+i);
}
}
void fun3(double *p3,int a)
{
for(int i=0;i<a;i++)
{
cout<<*(p3+i)<<" ";
}
}
void fun4(double *p4,int a)
{
for(int i=1;i<a;i++)
{
for(int j=0;j<a-i;j++)
{
if(*(p4+j)<*(p4+j+1))
{
int temp = *(p4+j);
*(p4+j) = *(p4+j+1);
*(p4+j+1) = temp;
}
}
}
}
void res(double * p5)
{
delete[] p5;
p5 = NULL;
}
int main()
{
int n;
cout<<"请输入学生数量:";
cin>>n;
double* p1=fun1(n);
fun2(p1,n);
fun3(p1,n);
fun4(p1,n);
fun3(p1,n);
res(p1);
p1 = NULL;
return 0;
}