关于刚才一只小鸟的问题,请大家看看
[code=C#][/code]
class Program
     {
         static double h = 100;      //两地总距离
         static double s = 0;        //小鸟飞行总距离  
         const int birdSpeed = 30;   //小鸟飞行速度
         const int aSpeed = 20;      //火车速度A
         const int bSpeed = 15;      //火车速度B
         static void Main(string[] args)
         {
             for (; ; )
             {
                 double time = h / (birdSpeed + aSpeed);     //第一次小鸟与火车相遇所用时间
                 h = h - aSpeed * time + bSpeed * time;      //相遇后两火车之间距离
                 if (h < 0.1)                                //判断是否相遇
                 {
                     Console.WriteLine(s);
                     break;
                 }
                 else
                 {
                     s = s + birdSpeed * time;               //没有相遇,累计小鸟飞行距离
                     time = h / (birdSpeed + bSpeed);        //飞向另一火车所用时间
                     h = h - aSpeed * time + bSpeed * time;  //剩余距离
                     if (h < 0.1)
                     {
                         Console.WriteLine(s);
                         break;
                     }
                     else s = s + birdSpeed * time;
                 }
             }
             Console.ReadKey();
         }
     }
得出的总飞行距离不对. 可能是思路不对吧 . 刚才学不久别笑我啊
------解决方案--------------------
你说是这个?http://topic.csdn.net/u/20090501/01/77bc8798-90b0-4877-86a8-fc924e26bc34.html
题目都有问题你还真去做啊...这么跟你说吧,小鸟没有长度也没有给出最小步进单位,那就是线性移动了...得用线性代数和微积分求解,不是简单的加减乘除能解决的...