标题:一组数据的“去重“和”排序“问题,我的程序错误很多,请各位高手改正一下 ...
取消只看楼主
天谈2011
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2011-3-27
结帖率:100%
已结贴  问题点数:20 回复次数:2 
一组数据的“去重“和”排序“问题,我的程序错误很多,请各位高手改正一下!
题目:
样例输入
10
20 40 32 67 40 20 89 300 400 15
样例输出
8
15 20 32 40 67 89 300 400


#include<stdio.h>
int main()
{
   void delete(int a[],int k,int b);
   void bub(int a[],int n,int l);
   int n,i,j,l=0;
   int a[1000];
   scanf("%d",&n);
   for(i=0;i<n;++i)
       scanf("%d",&a[i]);
   for(i=0;i<n;++i)
   {
     for(j=i+1;j<n;++j)
         if(a[i]==a[j])
             delete(a,a[i+1],n);
         l++;
   }
   printf("%d\n",n-l);
  bub(a,n,l);
  for(i=0;i<(n-l);++i)
  {
    printf("%d",a[i]);
  }
  printf("\n");
  return 0;
}
void delete(int a[],int k,int b)
{
  int i,j;
  for(i=0;i<b;++i)
  {
    if(k==a[i])
        for(j=i;j<b-1;++j)
            a[j]=a[j+1];
        break;
  }
}
void bub(int a[],int n,int l)
{
   int i,j,t;
   for(i=0;i<n-l;++i)
   {
     for(j=0;j<n-l-1;++j)
         if(a[j]>a[j+1])
         {
           t=a[j];
           a[j]=a[j+1];
           a[j+1]=t;
         }
   }
}
搜索更多相关主题的帖子: 程序错误 
2011-04-20 12:03
天谈2011
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2011-3-27
得分:0 
回复 3楼 走停停
您的程序写的很好啊!
感谢帮助!
2011-04-21 13:23
天谈2011
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2011-3-27
得分:0 
谢谢各位的关注
2011-04-21 13:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-337309-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.836580 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved