练习:要求在堆区连续申请5个int的大小空间用于存储5名学生的成绩,分别完成空间的申请、成绩的录入、升序排序、成绩输出函数,并在主程序中完成测试
要求使用new
#include <iostream>
using namespace std;
double *addr_new()
{
double *ptr=new double[5];//申请空间
return ptr;
}
int inscore(double *ptr)
{
//循环录入成绩
for(int i=0;i<5;i++)
{
cout<<"请输入第"<<i+1<<"位学生成绩:";
cin>>ptr[i];
}
return 0;
}
int sort_score(double *ptr)
{
for(int i=1;i<5;i++)
{
for(int j=0;j<5-i;j++)
{
if(ptr[j]>ptr[j+1])
{
double temp=ptr[j];
ptr[j]=ptr[j+1];
ptr[j+1]=temp;
}
}
}
return 0;
}
int out_score(double *ptr)
{
cout<<"学生成绩:";
for(int i=0;i<5;i++)
{
cout<<ptr[i]<<'\t';
}
cout << endl;
return 0;
}
int main()
{
//申请空间
double *ptr=addr_new();
//录入成绩
inscore(ptr);
//升序
sort_score(ptr);
//输出
out_score(ptr);
//释放空间
delete []ptr;
ptr=NULL;
return 0;
}
X-Mind思维导图