头歌Java语言之控制语句

2 篇文章 0 订阅
2 篇文章 0 订阅

第1关:if-else语句 - 绩点计算

本关的编程任务是补全右侧代码片段中Begin至End中间的代码,具体要求如下:

decompose()方法将传入一个变量score,表示小明的课程的成绩。
输出该课程的绩点数值。

package step1;

public class DecomposeFactor {
	public void decompose(int score) {
		/********** Begin *********/
if(score<60){
	System.out.println(0.0);
}
else if(score>=60&&score<70){
	System.out.println(2.5);

}
else if(score>=70&&score<80){
	System.out.println(3.0);

}
else if(score>=80&&score<90){
	System.out.println(3.5);

}
else if(score>=90&&score<=100){
	System.out.println(4.0);

}

		/********** End *********/
	}
}

第2关:while语句 - 奇怪的运算式

编程要求
本关的编程任务是补全右侧代码片段中Begin至End中间的代码,具体要求如下:

addition()方法将传入变量a和变量n。
计算sum=a+aa+aaa+aaaa+aa…a (n个a),并输出sum的值。例如当a=2,n=3时,2+22+222=246,即sum的值为246。

package step2;

public class AdditionCalculator {
	public void addition(int a, int n) {
		/********** Begin *********/
long sum = 0l;
    int b = a;
    while(n>0) {
        sum = sum +a;
        a = a*10 + b;
        n--;
    }
    System.out.print(sum);


		/********** End *********/
	}
}

第3关:for语句 - 阶乘求解

编程要求
本关的编程任务是补全右侧代码片段中Begin至End中间的代码,具体要求如下:

factorial()方法将传入变量n。
使用for循环计算正整数n的阶乘并输出。例如,计算5!=54321=120。

package step3;

public class Factorial {
	public void factorial(int n) {
		/********** Begin *********/
      
		
		int sum=1;
		for (int i=1;i<=n;i++) {
			sum =sum*i;
		}
		System.out.println(sum);

		/********** End *********/
	}

}


第4关:switch语句 - 今天是第几天

编程要求
本关的编程任务是补全右侧代码片段中Begin至End中间的代码,具体要求如下:

int型变量year、month、day分别为年、月、日,判断这一天是这一年的第几天,并输出计算结果。(思路提示:根据输入的月份来循环累计天数,并根据年份判断是否是闰年,因为闰年的2月份会有29天哦!)

package step4;

public class DayCount {
	public void dayCount(int year, int month, int day) {
		/********** Begin *********/
 int sum=0;
        int flag = year % 4;
        switch(month) {
            case 1:sum = day;break;
            case 2:sum = day+31;break;
            case 3:sum = day+31+29;break;
            case 4:sum = day+31+29+31;break;
            case 5:sum = day+31+29+31+30;break;
            case 6:sum = day+31+29+31+30+31;break;
            case 7:sum = day+31+29+31+30+31+30;break;
            case 8:sum = day+31+29+31+30+31+30+31;break;
            case 9:sum = day+31+29+31+30+31+30+31+31;break;
            case 10:sum = day+31+29+31+30+31+30+31+31+30;break;
            case 11:sum = day+31+29+31+30+31+30+31+31+30+31;break;
            case 12:sum = day+31+29+31+30+31+30+31+31+30+31+30;break;
        }
    if(flag != 0 && month > 2) {
        System.out.print(sum-1);
    }
    else {
        System.out.print(sum);
    }


		/********** End *********/
	}
}

  • 12
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

k1elvin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值