Java黑皮书课后题第5章:**5.28(显示每月第一天是周几)编写程序,提示用户输入年份和代表概念第一天是周几的数字,然后在控制台显示该年各个月份的第一天是周几
生活随笔
收集整理的這篇文章主要介紹了
Java黑皮书课后题第5章:**5.28(显示每月第一天是周几)编写程序,提示用户输入年份和代表概念第一天是周几的数字,然后在控制台显示该年各个月份的第一天是周几
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
5.28(顯示每月第一天是周幾)編寫程序,提示用戶輸入年份和代表概念第一天是周幾的數(shù)字,然后在控制臺顯示該年各個(gè)月份的第一天是周幾
- 題目
- 題目概述
- 破題
- 代碼
- 運(yùn)行示例
題目
題目概述
5.28(顯示每月第一天是周幾)編寫程序,提示用戶輸入年份和代表概念第一天是周幾的數(shù)字,然后在控制臺顯示該年各個(gè)月份的第一天是周幾
如:如果用戶輸入的年份是2013和代表2013年1月1日為星期二的2,程序應(yīng)該顯示如下輸出:
January 1, 2013 is Tuesday
December 1, 2013 is Sunday
破題
使用嵌套,外層for循環(huán),內(nèi)層兩個(gè)switch選擇語句
代碼
import java.util.Scanner;public class Test5_28 {public static void main(String[] args) {// 接收用戶輸入Scanner input = new Scanner(System.in);System.out.println("輸入年份和代表該年第一天是周幾的數(shù)字");int year = input.nextInt();int day = input.nextInt();// 計(jì)算指定年份1月1號到String str = "";String str2 = "";for (int month = 1; month <= 12 ; month++){// 月份天數(shù)(不考慮閏年)switch (month){case 1: {str1 += "January 1, ";} break;case 2: {day += 31; str1 += "Febuary 1, ";} break;case 3: {day += 28; str1 += "March 1, ";} break;case 4: {day += 31; str1 += "April 1, ";} break;case 5: {day += 30; str1 += "May 1, ";} break;case 6: {day += 31; str1 += "June 1, ";} break;case 7: {day += 30; str1 += "July 1, ";} break;case 8: {day += 31; str1 += "Auguest 1, ";} break;case 9: {day += 31; str1 += "September 1, ";} break;case 10: {day += 30; str1 += "October 1, ";} break;case 11: {day += 31; str1 += "November 1, ";} break;case 12: {day += 30; str1 += "December 1, ";}}// 判斷閏年+month大于等于2則day+1if (((year % 4 == 0) && (year % 100 != 0)) || ((year % 400 == 0) && (year % 100 == 0))){if (month != 1)day +=1;}// 求是周幾int week = day % 7;switch (week){case 1:str2 = " is Monday";break;case 2:str2 = " is Tuesday";break;case 3:str2 = " is Wednesday";break;case 4:str2 = " is Thurday";break;case 5:str2 = " is Friday";break;case 6:str2 = " is Saturday";break;case 0:str2 = " is Sunday";break;}// 輸出System.out.println(str + year + str2);str = "";str2 = "";}} }運(yùn)行示例
輸入年份和代表該年第一天是周幾的數(shù)字 2013 2 January 1, 2013 is Tuesday Febuary 1, 2013 is Friday March 1, 2013 is Friday April 1, 2013 is Monday May 1, 2013 is Wednesday June 1, 2013 is Saturday July 1, 2013 is Monday Auguest 1, 2013 is Thurday September 1, 2013 is Sunday November 1, 2013 is Tuesday December 1, 2013 is Friday October 1, 2013 is SundayProcess finished with exit code 0總結(jié)
以上是生活随笔為你收集整理的Java黑皮书课后题第5章:**5.28(显示每月第一天是周几)编写程序,提示用户输入年份和代表概念第一天是周几的数字,然后在控制台显示该年各个月份的第一天是周几的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java黑皮书课后题第5章:**5.27
- 下一篇: Java黑皮书课后题第5章:*5.30(