题解 | #序列中删除指定数字#

序列中删除指定数字

http://www.nowcoder.com/practice/7bbcdd2177a445a9b66da79512b32dd7

#include <stdio.h>
int main()
{
  int n, k, x;
  scanf("%d\n", &n);   //输第一行的数字个数n
  int arr[50] = {0};
  for(k=0; k<n; k++)
    scanf("%d ", &arr[k]);   //输入第二行的n个数
  scanf("%d\n", &x);   //输入要删除的数字
  int i=0, j=0;  
   //无论是新定义的变量,还是再次使用前面用过的变量,必须设为0
  while(i<n)
  {
    if(arr[i] != x)   //遇到的不是要删除的数字
        arr[j++] = arr[i++];  //保留在数组中,j+1,再看下一个数
    else
        i++;   //否则不保留
   }
  for(i=0; i<j; i++)   //除去被删元素,只剩下j个元素
     printf("%d ", arr[i]);
  return 0;
}

全部评论

相关推荐

皮格吉:不,有的厂子面试无手撕,可以试试。都是一边学一边面。哪有真正准备好的时候,别放弃
无实习如何秋招上岸
点赞 评论 收藏
分享
迷茫的大四🐶:这就是他们口中的ai时代的一人公司
点赞 评论 收藏
分享
评论
2
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务