#include<stdio.h> #include<math.h> #include<string.h> #define inf 0x7fffffff struct phone{ char name[20]; float p;//性能分数 float q;//价格 }Phone[100]; int main() { int t; scanf("%d",&t); while(t--) { int n; scanf("%d",&n); int i,j; for(i=0;i<n;i++) { scanf("%s %f %f",Phone[i].name,&Phone[i].p,&Phone[i].q); } float xjb[100]={0};//性价比 for(i=0;i<n;i++) { xjb[i]=Phone[i].p/Phone[i].q; } int k=0;//编号 for(i=0;i<n;i++) { int t=0; float max=0.0; for(j=0;j<n;j++) { if(xjb[j]>max&&xjb[j]!=-1) { t=j; max=xjb[j]; } } printf("%d %s %.0f %.0f\n",++k,Phone[t].name,Phone[t].p,Phone[t].q); xjb[t]=-1; } // for(i=0;i<n;i++) // { // if(xjb[i]>max) // { // t=i; // max=xjb[i]; // } // if(i==n-1) // { // printf("%d %s %.0f %.0f",++k,Phone[t].name,Phone[t].p,Phone[t].q); // xjb[t]=-1; // i=0; // max=0.0; // t=0; // if(k==n){ // break;} // else{ // printf("\n"); // } // // } // } } return 0; } |
Double click to view unformatted code.