一、实验内容及步骤

(一)使用JDk编译、运行简单的Java程序

(一)使用JDk编译、运行简单的Java程序

输入cd Code命令进入Code目录

输入mkdir 20175308建立实验目录

ls查看当前工作目录

cd 20175308进入实验目录,mkdir exp1建立第一个实验目录

cd exp1进入第一个实验目录,pwd查看当前工作路径

vim Hello.java编辑Hello.java

javac -d . Hello.java编译代码

java Hello运行代码

(二)使用IDEA调试Java

判断循环内部是否有问题。添加条件断点:在for循环中添加i为50的断点程序

  • 在某一行添加断点
  • rundebug调试当前代码
  • Step Over向下执行一行
  • sum=11

(三)练习

学生成绩管理系统

代码

Test.java

import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner((System.in));
String choice = "1";
ScoreList studentScoreList = new ScoreList();
System.out.println("**********学生成绩管理系统********");
while(choice.equals("0") == false){
System.out.println("1.查看学生成绩单");
System.out.println("2.添加学生成绩记录");
System.out.println("3.修改学生成绩记录");
System.out.println("4.删除学生成绩记录");
System.out.println("5.查看某位学生成绩记录");
System.out.println("6.统计这门课平均分、最高分和最低分");
System.out.println("7.按成绩从高往低排序,并输出");
System.out.println("0.退出程序");
System.out.print("Enter your choice: ");
choice = input.next(); switch (choice){
case"0":
System.out.println("谢谢您的使用,欢迎下次光临!");
break;
case"1":
studentScoreList.trascript();
System.out.println("请问您还需要什么服务?\n");
break;
case"2":
int i = 1;
do {
studentScoreList.add();
System.out.println("\n是否继续添加?"+"\n"+"0.否"+"1.是");
i=input.nextInt();
}while (i ==1);
System.out.println("请问您还需要什么服务?\n");
break;
case "3":
studentScoreList.recompose();
System.out.println("请问您还需要什么服务?\n");
break;
case "4":
studentScoreList.delete();
System.out.println("请问您还需要什么服务?\n");
break;
case"5":
studentScoreList.inquire();
System.out.println("请问您还需要什么服务?\n");
break;
case "6": System.out.println("请问您还需要什么服务?\n");
break;
case "7":
studentScoreList.sort();
studentScoreList.trascript();
System.out.println("请问您还需要什么服务?\n");
break;
default:
System.out.println("Invalid input! Please enter again.");
break; } }
}
}
public class ScoreList {
int maxLength = 100;
int length = 0;
Score[] data = new Score[maxLength];
Scanner input = new Scanner(System.in);
public ScoreList(){ } public void add(){
if(length<maxLength){
data[length] = new Score();
System.out.print("请输入学生的学号:");
data[length].setNum(input.next());
System.out.println("请输入学生的姓名:");
data[length].setName(input.next());
System.out.println("请输入学生的成绩");
data[length].setScore(input.nextDouble());
length++;
System.out.println("添加成功!");
}
else {
System.out.println("添加失败!");
}
} public void trascript(){
System.out.println("==================================================");
System.out.println("学号 姓名 成绩 ");
for (int i=0;i<length;i++){
System.out.println(data[i].num+"\t"+data[i].name+"\t"+data[i].score);
}
System.out.println("==================================================\n");
} public void sort(){
Score temp = new Score();
for(int i = 1;i<length;i++){
for(int j=0;j<length-i;j++){
if(data[j].score<data[j+1].score){
temp = data[j];
data[j]=data[j+1];
data[j+1]=temp;
}
}
}
}
SocerLIst.java
public void delete(){
System.out.println("请输入你要删除的学号:");
String number1 = input.next();
int i,flag=length;
for(i = 0;i<length;i++){
if(number1.equals(data[i].num)){
flag=i;break;
}
}
if(i == length){
System.out.println("查无此人!请核对后重新输入\n");
delete();
}
else{
for(int j = flag;j < length;j++){
data[j] = data[j+1];
}
System.out.println("删除成功!\n");
length -=1;
}
}
public void insert(){
length +=1;
if(length<=maxLength) {
System.out.println("请输入您要添加的学生信息");
System.out.print("请输入学生的学号:");
data[length].setNum(input.next());
System.out.println("请输入学生的姓名:");
data[length].setName(input.next());
System.out.println("请输入学生的成绩");
data[length].setScore(input.nextDouble());
System.out.println("添加成功!");
}
else {
length -=1;
System.out.println("人数已满");
}
}
public void inquire(){
System.out.println("请输入你要查询的学生的学号");
String number2 = input.next();
int i;
for(i = 0;i < length;i++){
if(number2.equals(data[i].num)){
System.out.println("==================================================");
System.out.println("学号 姓名 成绩 ");
System.out.println(data[i].num+"\t"+data[i].name+"\t"+data[i].score);
System.out.println("==================================================\n");
break;
}
}
if(i == length){
System.out.println("查无此人!请核对后重新输入\n");
inquire();
}
}
public void recompose(){
System.out.println("请输入要修改的学生的学号:");
String number3 = input.next();
int i;
for(i = 0; i < length; i++) {
if(number3.equals(data[i].num)) {
System.out.println("请输入该学生新的学号,姓名和成绩:");
data[i].setNum(input.next());
data[i].setName(input.next());
data[i].setScore(input.nextDouble());
System.out.println("修改成功!\n");
break;
}
}
if(i == length) {
System.out.println("查无此人!请核对后重新输入学号\n");
recompose();
}
}
}
Score,java
public class Score {
    String num;
String name;
double score; public class Scor { }
public void setNum(String num) {
this.num = num;
} public void setName(String name) {
this.name = name;
} public void setScore(double score) {
this.score = score;
}
}

运行截图

三。设计思路

通过将问题从大化小来完成,大问题化为录入,排序,增添,删改,输出,来完成。将去年C语言的学生成绩管理系统看了一遍之后根据C语言的思路来写了java

四、实验总结与体会

1.做实验的时候,学生管理系统在C语言上也有涉及,但是我在java上感受到了不一样的实现方法,相比于C语言来说java更加灵活,可以实现的方式更加的多元化,录入,输出,排序,删除,通过各种方法来完成这一项项的任务,最后将这些功能全部加到Test里来完成实验,本次实验让我复习掌握了以前所学的知识,获益良多。

20175330 实验一 《Java开发环境的熟悉》实验报告的更多相关文章

  1. 20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20145308刘昊阳 <Java程序设计>实验一报告 实验名称 Java开发环境的熟悉 实验内容 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试J ...

  2. 20175316 盛茂淞 2018-2019-2 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20175316 盛茂淞 2018-2019-2 <Java程序设计>实验一 Java开发环境的熟悉 实验报告 一.实验要求 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA ...

  3. 20165327《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20165327<Java程序设计>实验二 <Java面向对象程序设计>实验报告 实验二 <Java面向对象程序设计> 一.实验报告封面 课程:Java程序设计 班 ...

  4. 20165205 实验一 java开发环境的熟悉 实验报告

    20165205 实验一 Java开发环境的熟悉 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:刘喆君 学号:20165205 指导教师:娄嘉鹏 实验日期:2018年4月2日 实验 ...

  5. 20162327实验一Java开发环境的熟悉实验报告

    20162327 <程序设计与数据结构>第一次实验报告 基础知识 1.JDB的使用 使用JDB调试程序需要以下五个步骤: 1.设置断点 stop in 2.run 3.print 4.ne ...

  6. 实验一Java开发环境的熟悉

    实验一Java开发环境的熟悉 实验内容 •命令行下Java程序开发 •IDEA下Java程序开发.调试 •练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) •实现凯撒密码 ...

  7. 20175316 盛茂淞 实验一 Java开发环境的熟悉

    20175316 盛茂淞 实验一 Java开发环境的熟悉 实验目的 使用JDK编译.运行简单的Java程序 实验要求 1.建立"自己学号exp1"的目录 2.在"自己学号 ...

  8. 20155327实验一 Java开发环境的熟悉

    20155327实验一 Java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的java程序 2.使用IDEA编辑.编译.运行.调试java程序 实验步骤 1.使用JDK编译.运行简单的jav ...

  9. 20165233 实验一 Java开发环境的熟悉

    20165233 实验一 Java开发环境的熟悉 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程: 2.完成实验.撰写实验 ...

  10. 20155231 java实验一 Java开发环境的熟悉

    20155231 java实验一 Java开发环境的熟悉 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程: 完成实验.撰写实验 ...

随机推荐

  1. CSS3 - @keyframes

    语法 @keyframes animationname { keyframes-selector {css-styles;} } 值 描述 animationname 必需.定义动画的名称. keyf ...

  2. CentOS-7.2安装Ambari-2.6.1

    CentOS-7.2安装Ambari-2.6.1 一.Ambari 是什么? Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目, ...

  3. 在php中使用对称加密DES3,开发银行卡绑定,实名验证……

    对称加密:对称加密是一种数据加密算法,对一组数据的加密和解密都使用一样的密钥(key),可以有效保护金融数据,常见的对称加密有DES,3DES,AES.RC2.RC4.RC5. DES3: 对DES算 ...

  4. T研究:国内云BPM市场规模尚小,预计2018年仅为3.29亿元

    文章摘要:T研究发现,目前国内云BPM市场规模不高,预计今年为3.29亿元,不过其增速稳定,未来发展仍可期. BPM?什么鬼?反正作为“菊外人”的小编是第一次听说. 其实,对于这个词,不光是小编,国内 ...

  5. Javascript 流程控制

    流程控制 JavaScript通过流程语句来执行程序流,程序流有若干语句组成.在正常情况下,程序中 的语句时按照书写顺序执行的,这种结构称为顺序结构.除了顺序结构之外还有选择结构和循环结构. 1.选择 ...

  6. Java的关键字

    下面列出Java关键字.这些保留字不能用于常量.变量和任标识示字符的名称 没事儿时多背背,对你没有坏处哒! 类别 关键字 说明 访问控制 private 私有的 protected 受保护的 publ ...

  7. 「Android」系统架构概述

    目录: 1.Android系统架构 2.Android类库 3.四大组件 --------------------------------------------------------------- ...

  8. CSS回顾(基础知识,元素,选择器,盒子,颜色)

    元素分类: 1.行级元素:内联元素  inline 特征:内容决定元素所占位置,不可以通过CSS改变宽高 span  strong   em  a  del 2.块级元素:block特征:独占一行,可 ...

  9. Java:注解Annotation(元数据)

    本文内容: 注解Annotation的介绍 基本注解的用法 自定义注解 首发日期:2018-07-28 注解Annotation的介绍 Annotation是代码中的特殊标记,能够在编译.类加载.运行 ...

  10. ERP按序打印问题

    按序打印只适合一个机器,不适合主副机模式,主副机模式请勾选同时打印 如果开启主副机模式勾选了按序打印,会造成副机下厨后厨不出单