數組元素的刪除
完成數組元素的移動功能:假設數組有n個元素,輸入一個數x,把數組的第x個位置的元素刪除了,后面的元素依次前進一個位置。 重復若干次這樣的刪除,得到最后的結果。
輸入格式
第一行包括一個整數n(1<=n<=100),表示數組元素的個數。 第二行輸入n個數組元素,均為整數,用空格隔開。 第三行輸入一個數k(1<=k<=100),表示要進行k次刪除。 接下來k行,每行一個數x,表示要刪除第x個元素。
輸出格式
輸出經過k次刪除后的數組,每兩個元素之間用空格隔開。
輸入樣例
10
1 2 3 4 5 6 7 8 9 10
4
3
2
4
6
輸出樣例
1 4 5 7 8 10
代碼
#include<stdio.h>
int main(void)
{
int n, h, i, j, c=0;
int a[100], b[100];
scanf("%d",&n);
for(i=0; i<n; i++){
scanf("%d",&a[i]);
}
scanf("%d",&h);
for(i=0; i<h; i++)
scanf("%d",&b[i]);
for(i=0; i<h; i++){
for(j=b[i]; j<=n; j++)
a[j-1]=a[j];
}
for(i=0; i<n-h; i++){
if(c==n-h-1)
printf("%d",a[i]);
else
printf("%d ",a[i]);
c++;
}
return 0;
}