C语言

明明的随机数

http://www.nowcoder.com/questionTerminal/3245215fffb84b7b81285493eae92ff0

C语言
循环不了,白给。
先排序,后去重。

#include<stdio.h>
#include<string.h>


//比较去重法
//冒泡排序法
int i,j,k,N;
int random[100],store[100],asb[100]  ;
int main()
{   

   while((~scanf("%d",&N) &&N) == EOF);//获取行数
    {    

      getchar();
      // scanf("%d",&N);
        for( i = 0; i < N ; i++)//收入数据
        {
            //getchar();
            scanf("%d\n",&random[i]);
           //getchar();
            store[i] = random[i];

        }

        for( j = 0; j <= N; j++)        //排序
        {
            for( i = 1; i < N; i++)
            {
                if(store[i-1] >= store[i])
                {

                      asb[i] = store[i];
                      store[i] = store[i - 1];      
                      store[i-1] = asb[i];

                }
            } 
        }






       for( j = 0; j < N ; j++)//去重
        {
            for( i = j+1; i < N ; i++)
            {
                if(store[j] == store[i])
                {  
                    for(k = i;k < N;k++)
                    {
                        store[k-1] = store[k];


                    }
                    N--;//缩短获取数组的有效区间
                    i--;
                }
            }
            printf("%d\n",store[j]);
        }



  }

    return 0;
}


全部评论

相关推荐

点赞 评论 收藏
分享
7 3 评论
分享
牛客网
牛客企业服务