Java语言基础

目录

一、实验目的

二、实验代码

1.分别用for和while循环计算1!+2!+…+10!的值。

2. 编写程序输出26个大写字母的ASCII对照表,程序运行参考结果如1-5所示。 

3.编写Java程序,从键盘输入年份和月份,然后输出该月份的天数(考虑是否闰年)

4.请设计一个方法判断用户输入月份计算机出该月的天数,并进行测试

5.请设计一个方法输出实心的菱形,并进行测试

6.使用选择法(冒泡法、快速排序法、直接插入法)对数组排序,并进行测试

7.九九乘法表打印

8.阶梯数组输出练习

9.求sin和cos值

三、实验补充

一、命名规范

二、注释规范

每文一语


点击这里下载本文及所有实验代码合集,超实惠哟! 

一、实验目的

1.掌握Java 开发环境的搭建,系统环境变量path、classpath的配置;

2.掌握Java 的运行机制;

3.掌握Java的基本语法格式,标识符的命名规范;

4.掌握Java语言中的常量与变量、变量的作用域;

5.掌握Java语言运算符与表达式的使用、运算符的优先级;

6.掌握Java程序的流程控制(即顺序结构、选择结构和循环结构)的使用。

7.掌握Java中方法的定义、重载与使用;

8.掌握 Java 数组的定义与遍历、求最值、排序等操作。

二、实验代码

1.分别用for和while循环计算1!+2!+…+10!的值。

package 作业练习.test1;

public class Exer01 {
    public static void main(String[] args) {
//		用for循环实现1-10的阶乘之和!
        int total_1 = 1;
        double num_1 = 0;
//		设置循环,首先定义判断值,后面椒判断条件,最后是判断次数
        for (int i = 1; i <= 10; i++) {
            total_1 *= i;
            num_1 += total_1;
        }
        System.out.println("1-10的阶乘之和为:" + num_1);
//		用while循环实现1-10的阶乘之和!
        int i = 1;
        int total = 1;
        double num = 1;
        while (i < 10) {
            i++;
            total *= i;
            num += total;
        }
        System.out.println("1-10的阶乘之和为:" + num);
    }
}

 

2. 编写程序输出26个大写字母的ASCII对照表,程序运行参考结果如1-5所示。 

package 作业练习.test1;

public class Exer02 {
    public static void main(String[] args) {
        System.out.println("\t\t" + "大写字母的ASCLL对照表");
        int n = 0;
        for (int i = 65; i <= 90; i++) {
            System.out.print((char) i + "\t");
            System.out.print(i + "\t");
            n++;
            if (n % 5 == 0)
                System.out.println();
        }
    }
}

3.编写Java程序,从键盘输入年份和月份,然后输出该月份的天数(考虑是否闰年)

 

package 作业练习.test1;
import java.util.Scanner;
public class Exer03 {
    public static void main(String[] args) {
        System.out.println("请输入年份:");
        Scanner sc = new Scanner(System.in);
        int year = sc.nextInt();
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            System.out.println("这是闰年!!");
        } else {
            System.out.println("这不是闰年!!");
        }
    }
}

4.请设计一个方法判断用户输入月份计算机出该月的天数,并进行测试

package 作业练习.test1;
import java.util.Scanner;
public class EXer04 {
    public static void main(String[] args) {
        // 实例化Scanner
        Scanner scan = new Scanner(System.in);
        // 提示用户输出月份
        System.out.println("请输入月份:");
        // 接收用户输入的月份
        int month = scan.nextInt();
        // 判断月份(注意break位置)
        switch (month) {
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                System.out.println("31天");
                break;
            case 4:
            case 6:
            case 9:
            case 11:
                System.out.println("30天");
                break;
            case 2:
                System.out.println("请输入对应年份:");
                int year = scan.nextInt();
                // 闰年判断
                if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) {
                    System.out.println("29天");
                } else {
                    System.out.println("28天");
                }
                break;
            default:
                System.out.println("请输入正确月份~");
                break;
        }
    }
}

5.请设计一个方法输出实心的菱形,并进行测试

package 作业练习.test1;

public class Exer05 {
    public static void main(String[] args) {
        int n = 4;
        //前4行.上半部分
        for (int i = 1; i <= n; i++)//控制行数
        {
            for (int k = n - 1; k >= i; k--)//打印空格
            {
                System.out.print(" ");
            }
            for (int j = 1; j <= 2 * i - 1; j++)//打印*
            {
                System.out.print("*");
            }
            System.out.println();
        }
        //后3行,下半部分
        for (int i = n - 1; i >= 1; i--) {
            for (int k = i; k <= n - 1; k++) {
                System.out.print(" ");
            }
            for (int j = 1; j <= 2 * i - 1; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

6.使用选择法(冒泡法、快速排序法、直接插入法)对数组排序,并进行测试

package 作业练习.test1;

import java.util.Scanner;

public class Exer08 {
        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            int Max=0;
            int[] score = new int[5]; //自定义数组长度
            System.out.println("please input five numbers:");
            for(int i=0; i< score.length; i++){
                score[i] = input.nextInt();
            }
            for(int j=0; j<score.length-1; j++){
                swap(score); //调用数组排序方法
            }
            System.out.println("########## the result: ###########");
            for(int i=0; i<score.length; i++){
                System.out.print(score[i]+"\t");
            }
        }
        public static void swap(int[] arr){ //冒泡法排序
            for(int i=0; i<arr.length-1; i++){
                if(arr[i]>arr[i+1]){
                    int temp = arr[i];
                    arr[i] = arr[i+1];
                    arr[i+1] = temp;
                }
            }
        }
    }



7.九九乘法表打印

public class Exer01 {

    /**
     * 实现一个简单的乘法表
     */
    public static void main(String[] args) {
        for(int i=1;i<=9;i++)
        {
            for(int j=1;j<=i;j++)
            {
                System.out.print(j+"*"+i+"="+i*j+" ");
            }
            System.out.println("");//必须在第二个for循环之外
        }
    }

}

8.阶梯数组输出练习

package 作业练习.test1;

public class Exer07 {
    public static void main(String[] args) {
        int triangle[][]=new int[10][];// 创建二维数组
        // 遍历二维数组的第一层
        for (int i = 0; i < triangle.length; i++) {//控制行数,输出10行
            triangle[i]=new int[i+1];// 初始化第二层数组的大小
            // 遍历第二层数组
            for(int j=0;j<=i;j++){//控制列数
                // 将两侧的数组元素赋值为1
                if(i==0||j==0||j==i){
                    triangle[i][j]=1;
                }else{//其他数值通过公式计算
                    triangle[i][j]=triangle[i-1][j]+triangle[i-1][j-1];
                }
                System.out.print(triangle[i][j]+"\t");// 输出数组元素
            }
            System.out.println();//换行
        }
    }
}

9.求sin和cos值

package 作业练习.test1;

public class Exer06 {
    private static double pi=3.141592658;
    //定义一个求绝对值的方法
    double myabs(double n){
        if(n<0){
            n*=(-1);
        }
        return n;
    }
    //求sin
    double mysin(double x){
        int i=1,sign=1;
        double item=x,frac=0,fz=x,fm=1;
        for(;myabs(item)>=10E-5;i+=2){
            frac+=item;//累加
            fz=fz*x*x;//分子
            fm=fm*(i+1)*(i+2);//分母
            sign=-sign;//符号
            item=sign*(fz/fm);//临时变量
        }
        return (frac);
    }
    public static void main(String[] args){
        Exer06 test = new Exer06();
        System.out.println(test.mysin(0.25*pi));
    }
}

 

三、实验补充

一、命名规范

1 项目名全部小写

2 包名全部小写

3 类名、接口名首字母大写,如果类名、接口名由多个单词组成,每个单词的首字母都要大写。

如:public class MyFirstClass{}

4 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。

如:int index=0;

       public void toString(){}

5 常量名全部大写

如:public static final String GAME_COLOR=”RED”;

6、所有命名规则必须遵循以下规则:

1)、名称只能由字母、数字、下划线、$符号组成

2)、不能以数字开头

3)、名称不能使用JAVA中的关键字。

4)、坚决不允许出现中文及拼音命名。

 

二、注释规范

1   类注释

在每个类前面必须加上类注释,注释模板如下:

/**

* Copyright (C), 2006-2010, ChengDu Lovo info. Co., Ltd.

* FileName: Test.java

类的详细说明

*

* @author 类创建者姓名
    * @Date    创建日期

* @version 1.00

*/

 

2   属性注释

在每个属性前面必须加上属性注释,注释模板如下:

/** 提示信息 */

private String strMsg = null;

 

3   方法注释

在每个方法前面必须加上方法注释,注释模板如下:

/**

类方法的详细使用说明

*

* @param 参数参数1的使用说明

* @return 返回结果的说明

* @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明

*/

4   构造方法注释

在每个构造方法前面必须加上注释,注释模板如下:

/**

构造方法的详细使用说明

*

* @param 参数参数1的使用说明

* @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明

*/

 

5   方法内部注释

在方法内部使用单行或者多行注释,该注释根据实际情况添加。

如://背景颜色

       Color bgColor = Color.RED

 

每文一语

有时候遇见了错误,也要享受美丽的邂逅,尽力所为,不留遗憾才是正确的选择!

本文幸运色是浅蓝色哟!天空很大,可以任凭你飞跃!加油!

 

点击这里下载本文及所有实验代码合集,超实惠哟!

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

王小王-123

您觉得舒心就点一点吧~~~

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

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

打赏作者

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

抵扣说明:

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

余额充值