已有101人关注
尊敬的明日科技的老师
发表在Java图书答疑 2012-03-05
是否精华
版块置顶:
尊敬的明日科技的老师:
您好,下面这段程序是:从键盘输入一组成绩,统计90分以上的所占的百分比。我的做法是将键盘输入放到一个字节数组中,再将字节数组中的值转换为整型放到整形数组中,
   m为大于等于90分的个数,输入的总数为10,n除10即为百分比。问题是:转换为int数组后,值变了,比如从键盘输入99,转换为int数组后,值变为56,
   到底是怎么回事?该怎么改?特向您请教,打扰了,谢谢。
import java.io.IOException;
public class chengji {

/**
 * @param args
 * @throws IOException 
 * @throws IOException 
 */
public static void main(String[] args) throws IOException  {
// TODO Auto-generated method stub
int m = 0;
int [] score = new int[10];
for(int i=0;i<10;i++){
byte [] chengji = new byte[20];
System.in.read(chengji);
score[i] = (int)chengji[i];
System.out.println(score[i]);
if(score[i]>90){
m++;
}
}
System.out.println(m/10*100.0+"%");
}


}
分享到:
精彩评论 1
无语_mrkj
学分:3155 LV11
2012-03-05
沙发
System.in.read(chengji)返回一个指定长度的整型字节数据,该数据表示的是Unicode的第一个字节或是字符的ASCII码值。所以会产生您说的结果。
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照