Java上机课的内容
Posted 昇陽特区
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java上机课的内容相关的知识,希望对你有一定的参考价值。
- 下载、安装、使用jdk 帮助文档
下载文档很简单,只需百度一下找到Google翻译版(英文版也可以)的jdk帮助文档就行了,下载完之后是一个.chm文件在电脑上可以直接打开的
具体使用方法,也是比较简单了,找到当前chm阅读器的查找功能,在需要查找的类目下输入类名就可以轻松查找,一般我们可以看到很多内容,比如这个Scanner类
简介还有实例都很详细,可以说帮助文档是非常重要的学习材料了.
- 基本数据类型和表达式
题目 已知:a=21, b=5, c=5.0, d=5.2,编程计算下列表达式的值:
a/b a%b a/c a%d
代码如下
package practise1; public class data1 { public static void main(String[] args) { //观察所有数据发现不都是整数,为了省事就全用double好了 double a = 21, b = 5, c = 5.0, d = 5.0; //直接输出计算结果 System.out.println(a/b); System.out.println(a%b); System.out.println(a/c); System.out.println(a%d); } } /* 输出结果如下 4.2 1.0 4.2 1.0 */
- 控制语句
题目1:
求两个数的最大值,实验步骤如下
(1) 定义两个int型变量a和b;
(2) 通过键盘输入变量a和b的值;
(3) 用if-else语句对两个整数进行比较,求出其中的最大值,并输出结果;
(4) 用条件运算符(? : )对两个整数进行比较,求出其中的最大值,并输出结果
package practise1; import java.util.Scanner; public class max_num { public static void main(String[] args) { int a, b; Scanner sc = new Scanner(System.in); System.out.println("请输入两个整数用空格隔开"); a = sc.nextInt(); b = sc.nextInt(); sc.close();
//下面使用if-else进行比较并输出 if(a > b) { System.out.println("最大的数字是 "+a); } else { System.out.println("最大的数字是 "+a); } //下面就是使用第二种方法进行比较操作 System.out.println((a > b?a:b)); } } /* 输出结果 请输入两个整数用空格隔开 45 55 最大的数字是 45 55 */
题目2:
判断用户输入的正整数能否被9整除(n<1000),直到用户输入1为止。练习循环语句、break和continue语句。
实验步骤:
(1) 用循环语句循环读入正整数n;
(2) 如果n=1,则中止循环的执行,否则继续;
(3) 如果n<0或n>1000,则报告错误,并回到(1)重新读入n,否则继续;
(4) 判断n是否能被9整除,并输出判断结果
(5) 继续下一次循环
代码
package practise1; import java.util.Scanner; public class canDisabedBy9 { public static void main(String[] args) { int n; Scanner sc = new Scanner(System.in); do { System.out.println("请输入一个大于0小于100得数来判断是否是9的倍数"); n = sc.nextInt(); if(n<0 | n>1000) { System.out.println("错误你输入的数字不在规定的范围内,请重试"); continue; //这里的方法就是当输入错误时直接开始下一个循环来实现重试 } //检测到输入是1直接跳出循环 if(n == 1) { break; } //经过前面的排除才进行9的整除判断 if(n%9 == 0) { System.out.println("你输入的数是9的倍数"); } else { System.out.println("很明显你输入的数字不是9的倍数"); } }while(n != 1); sc.close(); System.out.println("判断已经结束"); } } /* 运行结果 请输入一个大于0小于100得数来判断是否是9的倍数 8 很明显你输入的数字不是9的倍数 请输入一个大于0小于100得数来判断是否是9的倍数 5 很明显你输入的数字不是9的倍数 请输入一个大于0小于100得数来判断是否是9的倍数 9 你输入的数是9的倍数 请输入一个大于0小于100得数来判断是否是9的倍数 9999 错误你输入的数字不在规定的范围内,请重试 请输入一个大于0小于100得数来判断是否是9的倍数 1 判断已经结束 */
题目3:
定义一个方法,计算正方形的面积(假设正方形边长的值是正整数)。
实验目的
(1) 掌握如何定义方法。
(2) 掌握如何调用方法。
(3) 掌握形参和实参的按值传递关系。
(4) 学会如何在方法中返回值。
实验步骤
(1) 定义方法area计算正方形的面积;
(2) 在main方法中读入正方形的边长;
(3) 在main方法中调用方法area;
(4) 在main方法中输出正方形面积的值。
代码如下
package practise1; import java.util.Scanner; public class area1 { //定义一个计算面积的方法以便在主方法中调用 public static int sqrAre(int width) { int area = width*width; return area; } //主方法中调用面积计算方法,并输出结果 public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入正方形的边长"); int i = sc.nextInt(); sc.close(); System.out.println("面积是 "+area1.sqrAre(i)); } /* 输出示例 请输入正方形的边长 666 面积是 443556 */
题目4:
用递归的方法求n!(n≥0)。
实验目的
(1) 掌握递归方法的定义与使用。
(2) 熟悉递归的“递推”和“回归”过程。
(3) 掌握形参和实参的按值传递关系。
实验步骤
(1) 定义递归方法fac,计算整数n的阶乘;
(2) 在main方法中读入整数n的值;
(3) 在main方法中调用fac方法,求出整数n的阶乘;
(4) 在main方法中输出计算结果。
代码
package practise1; import java.util.Scanner; public class dg_jiecheng { //先定义我们的递归阶乘方法 public static int jiecheng(int n) { if(n<0) { System.out.println("不好意思负数还真没有阶乘呢"); return 0; } if(n==0) { return 1; } if(n>2) { n = n*dg_jiecheng.jiecheng(n-1); } return n; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入一个正整数来计算他的阶乘"); System.out.println("该数字的阶乘是 "+dg_jiecheng.jiecheng(sc.nextInt())); sc.close(); } } /* 输出示例 请输入一个正整数来计算他的阶乘 4 该数字的阶乘是 24 请输入一个正整数来计算他的阶乘 -4 不好意思负数还真没有阶乘呢 该数字的阶乘是 0 */
题目5:
用重载方法实现两个整数或两个浮点数的排序,按照从小到大的顺序将排序结果输出。
实验目的
(1) 掌握重载方法的定义与调用。
(2) 熟悉方法形参与实参的匹配和结合过程。
实验步骤
(1) 定义重载方法sort,给两个整数排序,方法中含有两个int 型参数,用于传递待排序的整数;
(2) 定义另一个重载方法sort,给两个浮点数排序,方法中含有两个double型参数,用于传递待排序的浮点数;
(3) 在main方法中定义两个int型变量并初始化;
(4) 在main方法中定义两个double类型变量并初始化;
(5) 在main方法中根据参数类型和个数的不同,调用不同的方法,从而实现重载。
代码
package practise1; public class chongzai { //既然没有要求顺序那我们就选从小倒大的顺序好了 public static void sort(int a,int b) { if(a>b) { System.out.println("("+a+","+b+")"); } else { System.out.println("("+b+","+a+")"); } } public static void sort(double a, double b) { if(a>b) { System.out.println("("+a+","+b+")"); } else { System.out.println("("+b+","+a+")"); } } public static void main(String[] args) { int a = 10, b = 15; double c = 2.5, d = 5.5; //测试这里特意用了三种形式,来看看重载到底做了什么 chongzai.sort(a, b); chongzai.sort(a, c); chongzai.sort(c, d); } } /* 运行结果 (15,10) (10.0,2.5) (5.5,2.5) */
以上是关于Java上机课的内容的主要内容,如果未能解决你的问题,请参考以下文章