输入描述:
第一行:先输入n,
第二行:再输入n个原数据。
第三行:输入待删除的数据。
输出描述:
输出删除特定元素后的剩余元素。
如:
输入 :
8
1 3 4 6 3 5 3 6
3
输出:
1 3 4 6 5 3 6
#include<stdio.h>
int main(void)
{
int n,a[10],i,k,t=0,m[5],j=0;
scanf("%d",&n);//输入n
for(i=0;i<n;i++)
scanf("%d",&a[i]);//输入n个元素
scanf("%d",&k);//输入待删除元素
for(i=0;i<n;i++)
if(a[i]==k) t++;//统计待删除元素的个数
for(i=0;i<n;i++)
if(a[i]==k) m[j++]=i;//用m数组来存放待删除元素在原始数组中的位置
if(t%2)
for(i=m[(t+1)/2-1];i<n-1;i++)//奇数
a[i]=a[i+1];
else//偶数
for(i=m[t/2-1];i<n-1;i++)
a[i]=a[i+1];
for(i=0;i<n-1;i++)
printf("%d",a[i]);
return 0;
}