(1) 对数组A中的N(0<N<100)个整数从小到大进行连续编号,要求不能改变数组A中元素的顺序,且相同的整数要具有相同的编号。
例如:A=(5,3,4,7,3,5,6) 则输出为: (3,1,2,5,1,3,4)
#include<stdio.h>
void arrange(int a[],int b[])
{
int i,j,n,t;
for(i=0;i<=n;i++)
{
b[i]=1;
for(j=0;j<n;j++)
{
if(a[i]>a[j])
{
b[i]++;
for(t=0;t<j;t++)
{if(a[j]==a[t]) b[i]--;}
}
}
}
}
void main()
{
int n,i;
int a[30],b[30];
printf("please input n:");
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
arrange(a,b);
for(i=0;i<n;i++)
printf("%4d",b[i]);
}
哪错了,出来一大串数字。。唉