A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 康嘉 中级黑马   /  2013-3-17 21:03  /  4397 人查看  /  44 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

If 语句课后题说让输入数字,打出星期几,哥们来个2013年任意月份和日期就告诉你星期几的

赶紧学新的吧,这个弄出来就后悔了,因为太崩溃了

回帖见崩溃的代码==========================================

//x是月份,y是日期
//输入2013年的任意一天,能告诉你是星期几,神奇~~=====if elseif  几层嵌套?
class XingQi{
        public static void main(String[] args) {
                 //定义一个日期,x=月份,y=日子
                   int x=11,y=11;
                 //  这是三月份的
                if (x==3&y>0&y<=31){
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }
                }else if(x==4&y>0&y<=30){  //  这是四月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }
                }else if(x==5&y>0&y<=31){  //  这是五月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }
                }else if(x==6&y>0&y<=30){  //  这是六月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }
                }else if(x==7&y>0&y<=31){//  这是七月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }
                }else if(x==8&y>0&y<=31){//  这是八月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }
                }else if(x==9&y>0&y<=30){//  这是九月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }
                }else if(x==10&y>0&y<=31){//  这是十月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }
                }else if(x==11&y>0&y<=30){//  这是十一月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }
                }else if(x==12&y>0&y<=31){//  这是十二月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }
                }else if(x==1&y>0&y<=31){//  这是一月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }       
                }else if(x==2&y>0&y<=28){  //  这是二月份的
                        if (y%7==1){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期五");
                        }else if(y%7==2){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期六");
                        }else if(y%7==3){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期日");
                        }else if(y%7==4){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期一");
                        }else if(y%7==5){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期二");
                        }else if(y%7==6){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期三");
                        }else if(y%7==0){
                                System.out.println("2013年"+x+"月"+y+"日"+"是星期四");
                        }
                }else{
                        System.out.println(x+"月"+y+"日哥们日子过晕了吧~");
                }
        }
}
//=============================================================



点评

再次提醒: 如果问题未解决,请继续追问回复者,如果问题已经解决,请将分类改为“已解决”,否则将扣除技术分,谢谢  发表于 2013-3-18 12:14
你这样搞,让人很无语的  发表于 2013-3-17 22:50

评分

参与人数 1技术分 +1 收起 理由
猫腻 + 1

查看全部评分

44 个回复

倒序浏览
借鉴一下
回复 使用道具 举报
何仕映 发表于 2013-3-17 21:05
借鉴一下

你都23分了啊....太狠了
回复 使用道具 举报
                          路过~
回复 使用道具 举报
                          路过~
回复 使用道具 举报
这个逻辑不难吧。。
回复 使用道具 举报
看看。。。。
回复 使用道具 举报
        楼主能用if-else写到底真不容易,表扬表扬~{:soso_e127:}
回复 使用道具 举报
杨博 中级黑马 2013-3-17 21:25:09
9#
看。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
回复 使用道具 举报
看看啊
回复 使用道具 举报
学习一下
回复 使用道具 举报
其实只是需要得到2013任意一天是星期几的话,可以换个思路。
步骤:1:首先2013年不是闰年,这一年的每月的天数就是:1、3、5、7、8、10、12都为31天,2月份为28天,其它都是30天。
         2:(为了方便)看下电脑2013年的1月1号是礼拜几。(礼拜二)——那就在case里设置为2,礼拜三为3...依次下去
         3:算出(1月1号到你给的几月几号)之间的总天数。 days
         4:通过(days % 7 = ?)这个公式得出的值。x
         5:case一下,x是几,然后这天就是礼拜几。

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

回复 使用道具 举报
你搞个回复才可以看 真是郁闷
回复 使用道具 举报
看看,学习一下
回复 使用道具 举报
学习中,领悟中。。。
回复 使用道具 举报
看看········
回复 使用道具 举报
  1. class Demo
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int x=3,y=17,z=1;
  6.                 String [] arr={"星期二","星期三","星期四","星期五","星期六","星期日","星期一"};
  7.                         switch (x){
  8.                         case 1:
  9.                                 z=y%7;
  10.                         System.out.println(arr[z-1]);break;
  11.                         case 2:
  12.                                 y=31+y;
  13.                                 z=y%7;
  14.                         System.out.println(arr[z-1]);break;
  15.                         case 3:
  16.                                 y=31+28+y;
  17.                                 z=y%7;
  18.                         System.out.println(arr[z-1]);break;
  19.                         case 4:
  20.                                 y=31+28+31+y;
  21.                                 z=y%7;
  22.                         System.out.println(arr[z-1]);break;
  23.                         case 5:
  24.                                 y=31+28+31+30+y;
  25.                                 z=y%7;
  26.                         System.out.println(arr[z-1]);break;
  27.                         case 6:
  28.                                 y=31+28+31+30+31+y;
  29.                                 z=y%7;
  30.                         System.out.println(arr[z-1]);break;
  31.                         case 7:
  32.                                 y=31+28+31+30+31+30+y;
  33.                                 z=y%7;
  34.                         System.out.println(arr[z-1]);break;
  35.                         case 8:
  36.                                 y=31+28+31+30+31+30+31+y;
  37.                                 z=y%7;
  38.                         System.out.println(arr[z-1]);break;
  39.                         case 9:
  40.                                 y=31+28+31+30+31+30+31+31+y;
  41.                                 z=y%7;
  42.                         System.out.println(arr[z-1]);break;
  43.                         case 10:
  44.                                 y=31+28+31+30+31+30+31+31+30+y;
  45.                                 z=y%7;
  46.                         System.out.println(arr[z-1]);break;
  47.                         case 11:
  48.                                 y=31+28+31+30+31+30+31+31+30+31+y;
  49.                                 z=y%7;
  50.                         System.out.println(arr[z-1]);break;
  51.                         default:
  52.                                 y=31+28+31+30+31+30+31+31+30+31+30+y;
  53.                                 z=y%7;
  54.                         System.out.println(arr[z-1]);break;
  55.                         }
  56.         }
  57. }
复制代码
我也写了一个 哈哈
回复 使用道具 举报
回帖见崩溃的代码?我来看看什么崩溃的代码
回复 使用道具 举报
用java api提供的相关类就可以实现,不用自己写,参见以下代码:

import java.text.SimpleDateFormat;
import java.util.Calendar;
public class Day {
public static void main(String[] args) {
  int month = 1;
  int day = 1;
  
  try {
   Calendar rightNow = Calendar.getInstance(); //初始化日期实例
   rightNow.set(Calendar.YEAR, 2013); //设置年
   rightNow.set(Calendar.MONTH, getMonth(month)); //设置月
   rightNow.set(Calendar.DAY_OF_MONTH, day);//设置日
   SimpleDateFormat f = new SimpleDateFormat("yyyy年MM月dd日 E"); //格式化日期输出格式
   
   System.out.print(f.format(rightNow.getTime()));
   
  } catch (Exception e) {
   
   e.printStackTrace();
   
  }
}
private static int getMonth(int month) throws Exception {//控制输入的月份
  
  if (month < 0 || month > 12) {
   
   throw new Exception("不存在的月份"+month+",重新输入");
  }
  
  int i = month - 1;
  
  return i;
}

}
回复 使用道具 举报
为什么回帖才能看那?
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马