keil中变量运算

2019-03-24 17:39发布

请问下面这个程序哪里有问题吗?总是计算不对x1,y1,的值,但是如果直接给m1,n1,b1,b2赋予常数值,x1,y1计算结果就是对的,这是为什么呢?



double m1,n1,m2,n2,b1,b2,c1,c2,c3,c4,d1,d2;     //计算中的中间变量
        int x1,x2,y1,y2;
    Ta=0;Tb=1;Tc=2;Td=3;
        c1=0.34*(Ta-Tb);        //时间差到距离差 单位为毫米
        c2=0.34*(Ta-Tc);
        c3=0.34*(Tc-Td);
        c4=0.34*(Tb-Td);
        m1=(4*c2)/(c1*3);
        n1=(c1*c2-c2*c2+300*300)/600;      //计算中的中间变量
        b1=m1*m1+1-(4*200*200)/(c1*c1);
        b2=n1*n1+200*200-(c1*c1)/4;
        x1=(int)((sqrt((m1*m1*n1*n1-b1*b2))-m1*n1)/b1);     //第一组想(x,y)
        y1=(int)(m1*x1+n1);
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。