Java 0511 java课第一次作业

作业1:

205153_a80k_3819174.png

错误部分:

第三行 float  值后面要加f;

第四行 long  l2值后面加L;

第六行 byte  b3 超出范围  byte范围-128~127;

第七行  j没有值 不能运算;

第十行  c2  不是char类型;

第十一行  byte  b=b1-b2;==》byte  b=(byte) b1-b2; 大转小要强转;

第十二行  char  c = c1+c2-1;   ==》 编译报错;

第十五行  double d = d1*i+j;  j没有值;

作业2:

1.(操作符)有如下代码:
int a = 5;
int b = (a++) + (--a) +(++a);
问执行完之后,b 的结果是多少?
2. (基本类型的运算)一家商场在举行打折促销,所有商品都进行8 折优惠。一
位程序员把这个逻辑写成:
short price = ...; // 先计算出原价
short realPrice = price * 8 / 10; //再计算出打折之后的价格
问:这段代码是否正确?如果正确,假设price  为100 ,那计算之后的
realPrice值为多少?如果不正确,应该怎么改正?
把完整代码写出来
3.关于运算符的作业
    随机给出一个五位数的彩票号码(正整数),程序输出该彩票号码中的数字及相关信息
        1)在主类的main方法中声明一个用于存放彩票号码的int型变量ticketNumber,以及
    用于存放彩票号码中个位、十位、百位、千位和万位上数字的byte型变量a1、a2、a3、
    a4和a5。
                2)?依次求出ticketNumber中个位、十位、百位、千位和万位上的数字,并将这些数字依
    次赋值给变量a1、a2、a3、a4和a5。
                3)输出表达式a1+a2+a34-a4+a5的值。
                4)输出表达式a1*a2*a3*a4*a5的值。

答案:

第一题  执行结果 b = 5+5+6   ==>b=16;

第二题  不正确;正确代码如下:

public class Promotion {
	public static void main(String[] args) {

		double price =100;
		double realPrice = price*8/10;
				System.out.println(realPrice);
	}
}

第三题  代码如下

import java.util.Random;


public class Lottery {
	public static void main(String[] args) {
		//先给出一个随机的5位数的彩票
		int ticketNumber;
		Random r=new Random();
		ticketNumber=r.nextInt(99999-10000+1)+10000;//设置一个10000~99999的随机数字
		System.out.println("随机的五位彩票数是:"+ticketNumber);
		
		byte a5=(byte) ((ticketNumber/10000)%10);//第万位数字的值
		byte a4=(byte) ((ticketNumber/1000)%10);//第千位数字的值
		byte a3=(byte) ((ticketNumber/100)%10);//第百位数字的值
		byte a2=(byte) ((ticketNumber/10)%10);//第十位数字的值
		byte a1=(byte) (ticketNumber%10);//第个位数字的值
		
		//输出彩票每一位的数字
		System.out.println("彩票第个位数字"+a5);
		System.out.println("彩票第十位数字"+a4);
		System.out.println("彩票第百位数字"+a3);
		System.out.println("彩票第千位数字"+a2);
		System.out.println("彩票第万位数字"+a1);
		
		int sum = a1+a2+a3+a4+a5;//彩票每位数字相加的和
		System.out.println("彩票每位数字相加的和是:"+sum);
		
		int product = a1*a2*a3*a4*a5;//彩票每位数字相乘的积
		System.out.println("彩票每位数字相乘的积是:"+product);
	}
}

 

转载于:https://my.oschina.net/u/3819174/blog/1811466

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值