数组写编号1264785624448888

我的想法是,先定义数组a和数组b
再把数组b排序
接着把数组b相等的部分去掉
最后如果数组ai=数组bj,输出b,得出结果
中间的过程有不对的吗,为什么错了

img

img

img


#include<stdio.h>
#include<string.h>
int main()
{
    int a[100],b[100];
    int i,j,s=1,n;
    memset(b,0,100*sizeof(int));
    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])
                b[i]++;
    for(i=0; i<n; i++)
    {
        s=1;
        for(j=0; j<n; j++)
            if(b[j]==0 &&a[i]>a[j])
                s++;
        printf("%d ",s);
    }
    printf("\n");
    return 0;
}