#include <stdio.h> int main() { int n,i,del,j=0; scanf("%d",&n); int a[n]; for(i=0;i<n;i++) { scanf("%d",&a[i]); } scanf("%d",&del); for(i=0;i<n;i++) { if(a[i]!=del) { a[j]=a[i]; j++; } } for(i=0;i<j;i++) printf("%d ",a[i]); return 0; }
换一种思考方式,思考:新建一个数组,把没有被删的存储打印(i用来遍历数组,j用来记录数据存放位置)