代码改变世界

ZJU_1058

2015-05-01 21:16  HaodongGUO  阅读(187)  评论(0编辑  收藏  举报

这是一道简单的模拟题

重在读懂题目在说什么和数据之间的联系

  #include<stdio.h>
  
  double a[7][7];
  int b[12];
  
  int main()
  {
      int i,j,flag=0,t,n;
      double m;
      scanf("%d",&t);
      while(t--)
      {
         if(flag)
            printf("\n");
         
         flag=1;
         
         for(i=1;i<=5;i++)
         for(j=1;j<=5;j++)
         {
             scanf("%lf",&a[i][j]);//输入各个国家之间的汇率换算
         }
         while(scanf("%d",&n)&&n)
         {
             b[1]=1;//起始国家是美国
             for(i=2;i<=n+1;i++)
             {
                 scanf("%d",&b[i]);//输入经过的国家,保存在b[i]中
             }
             b[n+2]=1;
             scanf("%lf",&m);
             for(i=2;i<=n+2;i++)
             {
                 m=m*a[b[i-1]][b[i]];//计算两个国家之间的汇率
                 m=(int)(m*100+0.5);
                 m=m/100;//四舍五入的表示方法
             }
             printf("%.2lf\n",m);
        }
     }
     return 0;
 }