20145312《Java第一次实验报告》
20145312《Java第一次实验报告》
Java开发环境的熟悉(Windows+Idea)
一、实验内容
- 使用Idea编辑、编译、运行、调试Java程序。
- 使用JDK编译、运行简单的Java程序;
二、实验步骤
- Idea下Java程序开发、调试
1) 双击桌面上Idea图标,如下图所示:
2) 新建new project,顶部工具栏File>New>Project,如下图所示:



3) 新建Java class,Project(右键)>src(右键弹出菜单)>New(选择)>Java class>命名,如下图所示:

4) 输入代码并运行,顶部工具栏Run(左键)>Run...(左键)>选择运行项目(左键)>运行程序,如下图所示:

5) 设置断点。.通过单击Run->Debug打开调试页面>设置断点(在撰写代码的窗格最左边点击,会在相应的行前面出现一个红点),如下图所示:

调试程序。单击Run->Debug进行调试,然后点击run窗口的Step Over或Step Into进行单步执行,可以查看此时变量的值,如下图所示:


- 命令行下编译Java程序
1) 打开命令行>找到程序所在位置>编译>运行
三、实验练习
- 要求:实现Fibonacci数列功能,并进行测试.
- 程序代码:
import java.util.Scanner;
public class Fibonacci {
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.println("Please input this Fibonacci n:");
int n=scanner.nextInt();//假设输入大于零的整数
float q=fibonacci(n)/fibonacciNormal(n );
System.out.printf("第%d个Fibonacci数与它后一项之比为:%.6f%n",n,q);
float sum=0;
for(int i=1;i<=n;i++){
sum+=fibonacci(i);
}
System.out.printf("第%d个Fibonacci数是:%2.0f%n",n,fibonacci(n));
System.out.printf("前%d个Fibonacci数之和是:%2.0f%n",n,sum);
System.out.printf("前%d个Fibonacci数为:",n);
for(int i=1;i<=n;i++){
System.out.printf("%2.0f\t",fibonacci(i));
}
}
//递归实现方法
public static float fibonacci(int n){
if(n<=2){
return 1;
}
else{
return fibonacci(n-1)+fibonacci(n-2);
}
}
//递推实现方法
public static float fibonacciNormal(int n){
if(n<=2){
return 1;
}
int n1=1,n2=1,sn=0;
for(int i=0;i<=n-2;i++){
sn=n1+n2;
n1=n2;
n2=sn;
}
return sn;
}
}
运行结果:

四、问题解决
1)问题:我想在运行时呈现前6个Fibonacci数为: 1 1 2 3 5 8 的结果,于是我用了一个for循环来读取fibonacci(n),如下:
for(int i=1;i<=n;i++){
System.out.printf("前%d个Fibonacci数为:%2.0f\t",n,fibonacci(i));
}
运行的结果是:
前6个Fibonacci数为: 1 前6个Fibonacci数为: 1 前6个Fibonacci数为: 2 前6个Fibonacci数为: 3 前6个Fibonacci数为: 5 前6个Fibonacci数为: 8
解决:我不想要“前6个Fibonacci数为”重复出现。于是我想到不能把它写在for循环里。于是我调试成:
System.out.printf("前%d个Fibonacci数为:",n);
for(int i=1;i<=n;i++){
System.out.printf("%2.0f\t",n,fibonacci(i));
}
最终得出我想要的结果。
2) 问题:我想得到fibonacci数前一项与后一项之比的小数形式,以体现fibonacci 的黄金比例。但是我只能得到它的整数比。
解决:在查阅工具书后,我知道了要把fibonacci 数定义为float型,它的输出才能为小数形式。如下:
float q=fibonacci(n)/fibonacciNormal(n );
五、心得体会:
这次的实验让我有重新温习了一遍Java的开发环境。在此之前我对fibonacci数列只有表面印象,为了能理解它的功能,我查阅了很多书籍,这样很好的帮我理清了思路,以及我要实现它的哪些功能。在调试中我与恶遇到了很多问题,于是我又把书上相关的知识点又看了一遍,并查阅了工具书,最后问题得到了解决。
20145312《Java第一次实验报告》的更多相关文章
- 20165210 Java第一次实验报告
20165210 第一次实验报告 实验内容 建立目录运行简单的Java程序 建立自己学号的目录 在上个目录下建立src,bin等目录 Javac,Java的执行在学号目录下 IDEA的调试与设置断点 ...
- java 第一次实验报告
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1353 姓名:黎静 学号:20135338 成绩: 指导教师:娄嘉鹏 ...
- Java第一次实验报告——Java开发环境的熟悉
北京电子科技学院(BESTI) 实 验 报 告 课程名称:java程序设计实验 班级:1352 姓名:洪韶武 学号:20135219 成绩: ...
- 南京邮电大学java第一次实验报告
实 验 报 告 ( 2017 / 2018学年 第2学期) 课程名称 JAVA语言程序设计 实验名称 Java集成开发环境的安装与使用. Java变量.表达式与控制结构 实验时间 2018 年 4 月 ...
- java第一次实验报告
北京电子科技学院(BESTI) 实 验 报 告 课程名称:java实验 班级:1352 姓名:潘恒 学号:20135209 成绩: ...
- java第一次实验总结&第三周总结
Java第一次实验报告,java开发环境与简单的Java程序 一.实验目的 1.熟悉JDK开发环境 2.熟练掌握结构化程序设计方法 二.实验内容 打印输出所有的"水仙花数",所谓& ...
- 20145330《Java程序设计》第一次实验报告
20145330<Java程序设计>第一次实验报告 实验一Java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Ja ...
- 20145320《Java程序设计》第一次实验报告
20145320<Java程序设计>第一次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.08 18: ...
- 20155339《java程序设计》第一次实验报告
20155339<java程序设计>第一次实验报告 实验一 java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的java程序: 2.使用IDEA编辑.编译.运行.调试java程 ...
随机推荐
- 160505、oracle 修改字符集 修改为ZHS16GBK
修改oracle字符集 方法/步骤 oracle数据库的字符集更改 A.oracle server 端 字符集查询 select userenv('language') from dual 其中N ...
- Java进阶SQL函数、网页定时刷新与自定义JSTL函数
一.SQL函数 能够在SQL语句中调用的函数(方法) ,用来实现一些小功能 聚合函数 能够把多行数据聚合成一个值(统计) count() 计数,计算数据条数 max() 计算最大值 m ...
- C# DataTable和DataRelation
form2.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.D ...
- FROM_UNIXTIME(unix_timestamp), FROM_UNIXTIME(unix_timestamp,format)
w SELECT ro.*, FROM_UNIXTIME(ro.wstart,'%Y%m%d') FROM room_order ro
- Centos locate 文件搜索命令(十一)
locate命令 locate 文件名 在后台数据库中按文件名搜索,搜索速度更快 /var/lib/mlocate #locate命令所搜索的后台数据库 updatedb 更新数据库 locate搜索 ...
- PHP_OS常量使用方法
通过PHP_OS来获得当前运行的操作系统,如果直接使用将无法获取值,但有一些默认的值,使用方法如下: switch(PHP_OS) { case 'FreeBSD': ...
- 前端开发 - CSS - 总结
CSS:层叠样式表(Cascading Style Sheets) 1.css的特征2.css的引入3.选择器4.伪类选择器5.伪元素选择器6.字体样式 文本样式 背景属性7.盒模型 border m ...
- 前端开发 - HTML - 总结
html head标签 title 显示网站的标题 meta 提供有关页面的原信息 link 链接css资源文件.网站图标 style 定义内部样式表 script 链接脚本js文件 body标签 块 ...
- 剑指Offer——二叉搜索树的第k个结点
题目描述: 给定一颗二叉搜索树,请找出其中的第k大的结点. 例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4 分析: 二叉搜索树中序遍历就是从小到大.只 ...
- java基础 01
java基础01 1. /** * JDK: (Java Development ToolKit) java开发工具包.JDK是整个java的核心! * 包括了java运行环境 JRE(Java Ru ...