View Code of Problem 3861

# include<stdio.h>
struct phone
{
 char name[20];
 float p;
 float price;
};
int main(void)
{
  int t,n,i,j,k;
  scanf("%d",&t);
  for(i=0;i<t;++i)
  {
    scanf("%d",&n);
    struct phone a[100] ,m;
    for(j=0;j<n;++j)
    {
      scanf("%s%f%f",a[j].name,&a[j].p,&a[j].price);
    }
    for(j=0;j<n-1;++j)
    {
      for(k=0;k<n-1-j;++k)
      {
        if(a[k].p/a[k].price<a[k+1].p/a[k+1].price)
        {
          m = a[k];
          a[k] = a[k+1];
          a[k+1] = m;
        }
      }
    }
    for(j=0;j<n;++j)
    {
      printf("%d %s %.0f %.0f\n",j+1,a[j].name,a[j].p,a[j].price);
    }
  }
  return 0;
}

Double click to view unformatted code.


Back to problem 3861