作者TECO2oo (TECO)
看板java
标题[问题] Java疑问?
时间Fri Apr 24 18:11:27 2015
刚接触Java不久,过程中遇到几个问题,想请教各位,谢谢。
import java.util.*;
public class Height {
public static void main(String args[])
{
String test;
Scanner scanner = new Scanner(System.in);
System.out.print("请输入身高(cm)?");
test = scanner.next();
int i = Integer.parseInt(test),a,b,c,d;
a=(i/5.08)*2;
b=a/12;
c=b*12;
d=a-c;
System.out.println("身高"+( i)+"公分"+"="+b+"尺"+d+"寸");
}
}
结果执行後,它告诉我"a=(i/5.08)*2;"这里有一个错误。
我只知道int是整数的意思,试过很多次,结果不是错误或数值不对。
遇到这种问题到底该怎麽修改,才可以真正执行呢?
麻烦各位了,谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.237.33.68
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1429870289.A.836.html
1F:推 cowbaying: 你这样跑结果会正确吗? XDDDD 04/24 18:14
2F:→ TECO2oo: 它告诉我有错误,但我却不晓得该怎麽修改才是正确的? 04/24 18:21
3F:→ cha122977: 缺casting吧? a = (int) (i/5.08)*2 04/24 18:21
4F:→ cowbaying: i至少改成float吧...不然除起来是整数 04/24 18:22
5F:→ cowbaying: 最後再cast就好 新手常犯错误 04/24 18:22
6F:→ cha122977: float不行 java预设浮点是double 除非你写5.08f 04/24 18:25
7F:→ cha122977: 而且这case要改也应该改a 04/24 18:26
8F:→ TECO2oo: 执行成功了,非常谢谢您们的建议^_^/!! 04/24 19:34