我叫王超然,是一名电脑爱好者,现在在新加坡留学上高一.我立志成为一名电脑人才,愿意在这里与大家一同分享我玩转电脑的心得.O-level华文考了A-One哈哈!
天气: 晴朗
心情: 高兴
/*P4Q12
* Name:Wang Chaoran
*Description: Displaying the first days of each month) Write a program that
* prompts the user to enter the year and first day of the year, and displays
* the first day of each month in the year on the console. For example, if the
* user entered the year 2005, and 6 for Saturday, January 1, 2005, your program
* should display the following output:
--------------------------------------------------------------------------------
[Page 127]
January 1, 2005 is Saturday
...
December 1, 2005 is Thursday
*/
import java.util.Scanner;
public class P4Q12
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("Please enter the year(eg.2005):");
int year = scan.nextInt();
int leapDay = 0,sum = 0;
System.out.println("Please enter the first day of the year(eg.6 for Saturday)");
sum = scan.nextInt();
String dayString ="",monthString="";
//judgement of leap year
if(((year%4==0)&&(year%100!=0))||(year%400==0))
leapDay=29;
else
leapDay=28;
System.out.println("PLease enter the first day of the year(eg.6 for Saturday)");
for(int month=1;month<=12;month++)
{
//Obtain the dayString
switch(sum%7)
{
case 1:dayString = "Monday";
break;
case 2:dayString = "Tuesday";
break;
case 3:dayString = "Wednesday";
break;
case 4:dayString = "Thursday";
break;
case 5:dayString = "Friday";
break;
case 6:dayString = "Saturday";
break;
case 7:dayString = "Sunday";
}
//Obtain the monthString + facilitate the dayString
switch(month)
{
case 1: sum+=31;monthString="January";
break;
case 2: sum+=leapDay;monthString="February";
break;
case 3:sum+=31;monthString="March";
break;
case 4:sum+=30;monthString="April";
break;
case 5:sum+=31;monthString="May";
break;
case 6:sum+=30;monthString="June";
break;
case 7:sum+=31;monthString="July";
break;
case 8:sum+=31;monthString="August";
break;
case 9:sum+=30;monthString="September";
break;
case 10:sum+=31;monthString="October";
break;
case 11:sum+=30;monthString="November";
break;
case 12:sum+=31;monthString="December";
}
//Display the answer
System.out.printf("%-9s%-2s%-9s%-4s%-9s\n",monthString," 1, ",year," is ",dayString);
}
}
}
导入论坛查看(76)回复(0)引用(0)好评(0) 差评(0)
加入收藏
编辑
审核
TAG:
computing