前面是一些连接数据库和查询什么的
<%
int a = rs1.getInt(2);
int c = rs2.getInt(2);
double e = c/a;
%><%=a%>
<%=c%>
<%=e%>显示
a 为 476
c 为 454
e 为 0.0为什么e显示为0.0
请指教

解决方案 »

  1.   

    double类型的就这样,如果是整数,它会保留一位小数
      

  2.   

    double a ;
    double c ;
    double e = c/a;
    先把 a  c转为double 就对了
      

  3.   

    类型不配佩,不可以这样直接计算输出的,把int转化为double,
    <%
    int a = 3;
    int c = 2;
    double e=a;
    double d=c;
    double f=e/d;
    %><%=f%>
      

  4.   

    可不可以这样:double a =rs1.getInt(2)+0.0;
    我以前将int转化为String 就是这么干的。String a=b+"";   (b是int型的)
      

  5.   

    首先 a和c都是int类型,对于int类型的数做除法得的值默认取小数点前面的数 如:0.2->0, 4.7->4
    所以c/a=0; 然而double e = c/a;又将0强转成double类型 所以变成0.0,如果你想得到精确的值就把a和c都转成double的。
      

  6.   

    很明显是类型的问题  454/476=0 因为他们都是int类型的 如果楼主想得出0.****就要求其中至少有一个是double型的
      

  7.   

    ni qi前面的那个数是什么啊