zoukankan      html  css  js  c++  java
  • 第三周java实验报告

     

     

    实验三 Java基本程序设计(2

    实验时间 2018-9-13

    第一部分:理论知识回顾

    第一章

    再次了解了java“白皮书”的关键术语,java的常见术语,对于大多数“白皮书”的关键术语依然不太理解。了解到java和C语言具有一定的相似性。

    第二章

    主要学习了java的环境配置,在修改路径的时候出现问题。会导致在cmd运行命令时出现无法加载主类等问题。

    第三章

    第三章主要讲述了java的基本语法,再次了解了java的五种语句,对于文件的输入输出,还有很大的问题。了解了break语句有带标签和不带标签之分。

    第二部分:实验部分

    1、实验目的与要求

    1)进一步掌握Eclipse集成开发环境下java程序开发基本步骤;

    2)熟悉PTA平台线上测试环境;

    3)掌握Java语言构造基本程序语法知识(ch1-ch3);

    4)利用已掌握Java语言基本程序设计知识,学习设计开发含有一个主类、类内可有多个方法的应用程序。

    2、实验内容和步骤

    实验1:采用个人账号登录https://pintia.cn/使用邀请码588329加入PTA平台NWNU-2017NISE教学班(西北师范大学 计算机科学与工程学院 2017级 网络与信息安全),完成《2018秋季西北师范大学面向对象程序设计(Java)(ch1-ch3)测试题1》,测试时间120分钟;

    实验2-实验3在课后完成

    实验2公民身份证号码按照GB11643—1999《公民身份证号码》国家标准编制,由18位数字组成:前6位为行政区划分代码,第7位至14位为出生日期码,第15位至17位为顺序码,第18位为校验码。从键盘输入1个身份证号,将身份证号的年月日抽取出来,按年-月-日格式输出。注意:输入使用Scanner类nextLine()方法,以免出错。

    输入样例:

    34080019810819327X

    输出样例:

    1981-08-19

    源代码:

    import java.util.*;

    public class 身份证信息 {

    public static void main(String[] args){

    Scanner in = new Scanner(System.in);

    while(true){

    System.out.println("请输入您的身份证号");

    String n = in.nextLine();

    if(n.length() == 18) {

    String year =(String) n.substring(6,10);

         String month = (String) n.substring(10,12);

         String day = (String) n.substring(12,14);

         System.out.println("您的出生日期是:"+year+"年"+month+"月"+day+"日");

         break;

    }else {

    System.out.println("请输入正确的身份证号码");

    }

    }

         }

    }

    实验中遇到的问题:可以输入一个身份证号,得到出生日期,但是在判断输入的身份证号码是否正确时遇到问题,一开始选择了if选择语句,但是只能执行一遍,不能在错误之后重新输入,然后使用了while语句解决。

    实验3studentfile.txt文件内容是本班同学的学号与姓名,利用此文件编制一个程序,将studentfile.txt文件的信息读入到内存,并提供两类查询功能:(1)输入姓名查询学号;(2)输入学号查询姓名。要求程序具有友好人机交互界面。

    编程建议:

    1)从文件中读入学生信息,可以编写如下函数:

    public static void StudentsFromFile(String fileName))

    2)输入姓名查找学生学号,可以编写如下函数:

    public static String findStudent(String name)

    (3)输入学号查找学生姓名,可以编写如下函数:

    public static String findStudent(String ID)

    源代码:

    源代码:

    package 班级成员表;

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;

    public class 班级成员表
    {
    public static void main(String[] args) {
    File file=new File("c:\","studentfile.txt");
    try
    {
    FileOutputStream fos=new FileOutputStream(file);
    String s=new String("20177101013 王之泰 " +
    "201771010129 王颖奇 " +
    "201771010120 苏浪浪 " +
    "201771010122 王斌龙 " +
    "201771010117 马兴德 " +
    "201771010123 汪慧和 " +
    "201771010127 王艳 " +
    "201771010107 冯志霞 " +
    "201771010130 王志成 " +
    "201771010143 张云飞 " +
    "201771010124 王海珍 " +
    "201771010136 杨野 " +
    "201771010142 张燕 " +
    "201771010121 唐月晨 " +
    "201771010111 李瑞红 " +
    "201771010113 李婷华 " +
    "201771010137 赵栋 " +
    "201771010139张季跃 " +
    "201771010110 孔维滢 " +
    "201771010119 穷吉 " +
    "201771010104 狄慧 " +
    "201771010105 达拉草 " +
    "201771010134 杨其菊 " +
    "201771010116 马凯军 " +
    "201771010103 陈亚茹 " +
    "201771010102 常惠琢 " +
    "201771010118 马昕璐 " +
    "201771010128 王玉兰 " +
    "201771010101 白玛次仁 " +
    "201771010125 王瑜 " +
    "201771010135 杨蓉庆 " +
    "20177101115 刘志梅 " +
    "201771010141 周强 " +
    "201772020113 李清华 " +
    "201771010114 李晓菁 " +
    "201771010132 徐思 " +
    "201771010138 邹丰蔚 " +
    "201771010112 罗松 " +
    "201771010133 杨玲 " +
    "201771010126 王燕 " +
    "201771010108 韩腊梅 " +
    "201771010106 东文财 " +
    "201771010109 焦旭超 " +
    "");
    byte[] output=s.getBytes();
    fos.write(output);
    System.out.println("文件写入成功");
    fos.close();
    }
    catch(Exception e)
    {
    e.printStackTrace();
    }

    try
    {

    FileInputStream fis=new FileInputStream(file);
    byte[] input=new byte[(int)file.length()];
    fis.read(input);
    System.out.println("文件大小为:"+input.length);
    String content=new String(input) ;
    System.out.println("文件内容为:"+content);
    }
    catch(Exception e)
    {
    e.printStackTrace();
    }

    }
    }

    实验中遇到的问题:仅仅可以通过程序把这一段字符串做成一个文本保存到c盘,并在控制台输出,但是不能按照学号和姓名来查询个人信息。

  • 相关阅读:
    浅析匿名内部类
    Neo4j学习实录 下载-安装-springboot操作neo4j
    Objective-C内存管理教程和原理剖析2
    Objective-C内存管理教程和原理剖析
    Objective-C语法快速参考
    Objective-C语法
    一点基础的东西:Objective-C的类型和常量
    IOS开发之----异常处理
    UITextField的详细使用
    TextField知多少
  • 原文地址:https://www.cnblogs.com/980303CYR/p/9657751.html
Copyright © 2011-2022 走看看