☰
BISHI30 二进制数1
2026/10/21 2:40:56 网站建设 项目流程

求解代码

publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));PrintWriterout=newPrintWriter(newOutputStreamWriter(System.out));Stringstr=br.readLine();longn=Long.parseLong(str.trim());intcount=0;while(n>0){count+=n&1;n=n>>1;}out.println(count);out.flush();out.close();br.close();}

小贴士

StreamTokenizer的in.nval是double类型(64 位浮点数), 但double的有效整数精度只有 53 位,将其强转为long(64 位整数)会造成精度丢失,所以这里需要用BufferedReader.readLine()读取字符串再转long。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询