今天做了一个打印相关月份的小程序,以前也做过,但是有小问题,这次我是用了switch来做

//开发基于控制台的2017年日历系统。在控制台打印出相应的月份
import java.util.Scanner;

public class PrintCalendar {

public static void main(String[] args) {
        System.out.println("*****************************************************");
        System.out.println("*****************  欢迎使用2017年日历    ******************");
        System.out.println("*****************************************************");
        System.out.println("请选择月份:");
        Scanner in = new Scanner(System.in);
        int month = in.nextInt();
        int  week = 0;
        System.out.println("星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六");
        switch(month) {//判断用户输入的月份,然后输出相应的月份
            case 1:
                week = 0;
                for (int i = 0; i < week; i++) {//打印空格,直到到相应的星期
                    System.out.print("\t");
                }
                for (int i = 1; i <= 31; i++) {//循环打印这个月的每一天
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {//判断是否到了星期六,到了就换行
                        System.out.println();
                    }
                }
                break;
            case 2:
                week = 31 % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 28; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 3:
                week = (31 + 28) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 31; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 4:
                week = (31 + 28 + 31) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 30; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 5:
                week = (31 + 28 + 31 + 30) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 31; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 6:
                week = (31 + 28 + 31 + 30 + 31) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 30; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 7:
                week = (31 + 28 + 31 + 30 + 31 + 30) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 31; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 8:
                week = (31 + 28 + 31 + 30 + 31 + 30 + 31) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 31; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 9:
                week = (31 + 28 + 31 + 30 + 31 + 30 + 31 + 31) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 30; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 10:
                week = (31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 31; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 11:
                week = (31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 30; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            case 12:
                week = (31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 +30) % 7;
                for (int i = 0; i < week; i++) {
                    System.out.print("\t");
                }
                for (int i = 1; i <= 31; i++) {
                    System.out.print(i);
                    System.out.print("\t");
                    if((i + week)  % 7 == 0) {
                        System.out.println();
                    }
                }
                break;
            default:
                System.out.println("输入数据有误!");
        }
        
        in.close();

}

}

java实现打印某一年的月份(以2017年的为准)相关推荐

  1. java小练习:.根据输入的月份,判断该月份有多少天

    package practiceGO;import java.util.Scanner;/** 2.根据输入的月份,判断该月份有多少天*/ public class Cto {public stati ...

  2. Java如何打印异常的堆栈?

    Java如何打印异常的堆栈? 参考文章: (1)Java如何打印异常的堆栈? (2)https://www.cnblogs.com/borter/p/9613546.html 备忘一下.

  3. 如何从Java中打印XML?

    本文翻译自:How to pretty print XML from Java? I have a Java String that contains XML, with no line feeds ...

  4. java ee打印功能_Java EE 8的前5个新功能

    java ee打印功能 备受期待的Java Enterprise Edition 8版本具有两个令人兴奋的新API(JSON绑定1.0和Java EE Security 1.0),并且对当前API进行 ...

  5. java ee打印功能_Java EE:异步构造和功能

    java ee打印功能 介绍 Java EE具有许多API和构造以支持异步执行. 从可伸缩性和性能的角度来看,这是至关重要的. 让我们假设2个模块相互交互. 当模块A (发送方)以同步方式向模块B ( ...

  6. Atitit.java swing打印功能 api  attilax总结

    Atitit.java swing打印功能 api  attilax总结 1. 打印方式有三种:2 1.1. 一是不经过任何修改,直接调用javascript中的window.print()打印.2 ...

  7. java 批量打印_JAVA批量打印皕杰报表

    原标题:JAVA批量打印皕杰报表 不使用皕杰报表工具条上的打印按钮,用java怎么实现批量打印皕杰报表呢? 解决方案: 皕杰报表提供了批量打印的工具类ReportToolkits,ReportTool ...

  8. 使用java实现打印功能_java实现打印功能有没有比较好的方式?

    Java 实现打印文件 Java 原生打印: 有一下几种实现方式: 实现打印对象:实现Printable接口 使用工具箱自带的打印对象(Toolkit.getDefaultToolkit().getP ...

  9. Java编程,打印昨天的当前时刻

    public class Demo {  /*   * Java编程,打印昨天的当前时刻   */  public static void main(String[] args){   Calenda ...

最新文章

  1. 大盘点|基于RGB图像下的机器人抓取
  2. Mybatis入门之动态sql
  3. c#获取父类_C#——父类中的this的指向,及用反射获取当前类所在的Type | 学步园...
  4. SpringMVC开发过程中的中文乱码问题
  5. python自动卸载win程序_朋友说:能不能用python,帮我写一个“制作工资条”的自动化程序...
  6. 9:04 2009-7-28
  7. 光凭 5G 根本无法解决宽带问题!
  8. 基于FPGA实践之呼吸灯(含程序)
  9. OpenG: 单模型旋转
  10. Rack集成Sentry
  11. win10电脑亮度调节失灵(win10电脑亮度调节失灵戴尔)
  12. 测试手机是否降频软件,如何检测自己的iPhone是否被苹果降频 降频的处理方法有哪些...
  13. 直观理解Dilated Convolution
  14. 微信支付遇到 商户号该产品权限未开通,请前往商户平台产品中心检查后重试
  15. Qt获取QTextEdit中的内容
  16. Json和List互相转化
  17. 【C语言】【unix c】信号量集(system v ipc)
  18. flink 1.10.1 java版本sql OverWindow示例(每事件出结果)
  19. inet_aton、inet_addr和inet_ntoa
  20. onlyoffice文件服务器安装,在本地服务器上安装Windows版ONLYOFFICE Integration Edition

热门文章

  1. 缓和曲线计算机编程,缓和曲线起点
  2. 判断浏览器是否为IE浏览器
  3. Android 判断一个点是否在封闭的Path内或不规则的图形内
  4. electron 打开调试_【Electron】Electron 调试
  5. 解魔方机器人系列(一)kociemba算法
  6. 台北离“智慧城市”不远了
  7. 猎豹快切App中用到的Android开发技巧探索[附源码]
  8. 模式识别学习笔记之——统计决策方法
  9. 策略模式玩转步兵,骑士和弓箭手
  10. aspen软件对电脑的要求_学会使用Aspen Plus自带案例,让你的模拟事半功倍