数据插入与删除
Posted 左岸繁华右岸殇
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据插入与删除相关的知识,希望对你有一定的参考价值。
今天做了一些小练习
/*
在一组数据(数目不超过10000)中,插入新数,删除所有与给定数相等的数据。
输入
第一行是未排序的一组非负整数,数目不超过10000。以-1作为结束标志。
第二行是要插入的数。
第三行是要删除的数。
输出
第一行输出自小到大排好序的数。如果没有元素,输出“No elements.”(不包括引号)。
第二行输出插入后自小到大排好序的数,以“,”隔开。
第三行输出删除后自小到大排好序的数,以“,”隔开。如果没有元素,输出“No elements.”(不包括引号)。
*/
#include<iostream>
using namespace std;
int main()
{
int const N=1000;
int arr[1000]={-1};
int a,i=0;
do
{
cin>>a;
if(a==-1)
break;
else
{
arr[i]=a;
i++;
}
}while(a>=0);
int n=i;
int input;
int del;
cin>>input;
cin>>del;
if(arr[0]==-1)
cout<<"No elements.";
else
{
for(i=0;i<n-1;i++)
for(int j=n-1;j>i;j--)
if(arr[j]<arr[j-1])
{
int k=arr[j-1];
arr[j-1]=arr[j];
arr[j]=k;
};
for(i=0;i<n;i++)
cout<<arr[i]<<" ";
cout<<"\n";
}
for(i=0;i<n;i++)
{
if (input<arr[i])
{
for(int j=n-1;j>=i;j--)
arr[j+1]=arr[j];
arr[i]=input;
break;
}
}
for(i=0;i<=n;i++)
cout<<arr[i]<<",";
cout<<"\n";
int q=0;
for(i=0;i<=n;i++)
{
if(arr[i]==del)
{
q++;
continue;
}
else
cout<<arr[i]<<",";
}
if(q==n+1)
cout<<"No elements.";
return 0;
}
以上是关于数据插入与删除的主要内容,如果未能解决你的问题,请参考以下文章