题解 | #序列中删除指定数字#
序列中删除指定数字
http://www.nowcoder.com/practice/7bbcdd2177a445a9b66da79512b32dd7
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main(void)
{
int arr1[20] = { 0 };
int arr2[20] = { 0 };
int n = 0;
int m = 0;
int a = 0;
int i = 0;
int j = 0;
int sign = 0;
int sum = 0;
//数组中放入n个整数
scanf("%d", &n);
for (i = 0; i < n; i++)
{
//放入的每个数字
scanf("%d", &m);
arr1[i] = m;
}
//想要删除的那个数字
scanf("%d", &a);
//遍历数组arr1,如果没有碰到我要删除的数字,就把数字存放到arr2中
for (i = 0; i < n; i++)
{
if (arr1[i] != a)
{
sign = 1;
arr2[j] = arr1[i];
j++;
sum++;
}
}
//arr1中有我要删除的数字
if (sign == 1)
{
for (i = 0; i < sum; i++)
{
printf("%d ", arr2[i]);
}
}
//arr1中没有我要删除的数字
else
{
for (i = 0; i < n; i++)
{
printf("%d ", arr1[i]);
}
}
return 0;
}