数组data中存放了n个互不相同的数,找出其中的最小数并从数组中删除

来源:百度知道 编辑:UC知道 时间:2024/06/16 10:03:39

#include <iostream>
using namespace std;
int main()
{
int *data,n;
cout<<"输入数组长度:";
cin>>n;

data=new int[n];

for(int i=0;i<n;i++)
cin>>data[i];
int min=data[0],pos=0;

for(int i=1;i<n;i++)
if(min>data[i])
{
min=data[i];
pos=i;
}

for(int i=pos;i<n;i++)
data[i]=data[i+1];

data[n-1]=NULL;

for(int i=0;i<n;i++)
cout<<data[i]<<' ';
cout<<endl;

delete []data;

return 0;
}

数组又不是线性表,怎么样删除一个元素啊?
你的意思,是不是把最小元素除掉后,数组从n个元素变为了n-1个元素?
C中数组一旦确定,长度就不可以更改.