实验六 输入输出流与文件
JAVA语言实验指导

JAVA语言实验指导《Java程序设计》课程实验指导书实验一熟悉Java编程环境和Java程序结构一、实验目的:通过简单的输入输出程序熟悉Java编程环境,认识Java程序结构。
二、实验内容:在JDK或者V isual J++环境下编写简单的输入输出程序。
三、实验要求:1. 接收一个键盘输入的字符;2. 输出一条简单的问候信息;3. 写出实验报告,要求对程序结构做出详细的解释。
四、实验学时:2学时五、实验步骤:1.进入Java编程环境;2. 新建一个Java文件,命名为inOut.java;3. 定义主方法static public void main(String[ ] args);在方法体中调用System.in.read方法接收一个键盘输入的字符;调用System.out.println()方法,使程序输出一条问候信息;4. 编译运行程序,观察运行情况和输出结果。
(如果使用JDK环境,调用javac.exe和java.exe编译和执行程序)六、选作实验编写Java Applet程序实现上述功能。
实验二 Java语言基础训练一、实验目的:熟悉Java基本语法,练习使用Java的数据类型和控制结构,实现简单的数据和字符串操作。
二、实验内容:编写Java程序,输出1900年到2000年之间的所有润年。
三、实验要求:1. 正确使用Java语言的控制结构;2. 从屏幕输出1900年到2000年之间的所有润年;3. 写出实验报告。
四、实验学时:2学时五、实验步骤:1.进入Java编程环境;2. 新建一个Java文件,命名为runY ear.java;3. 定义主方法,查找1900到2000年之间的润年,并输出它们;4. 编译运行程序,观察输出结果是否正确。
六、选作实验编写程序,查找一个字符串中是否包含指定的字符。
实验三面向对象基础熟悉Java类的结构,掌握类的定义、方法和属性的定义以及对象的实现,掌握类的继承。
P1口输入输出实验

.实验一P1口输入输出一.实验目的1)进一步熟习51单片机外面引脚线路连结;2)考证常用的51指令;3)学习简单的编程方法;4)掌握单片机全系统调试的过程及方法;5)学习P1口的相关功能作用以及使用方法。
二.实验说明P1口因为有内部上拉电阻,没有高阻抗输入状态,称为准双向口。
作为输出口时,不需要在片外接上拉电阻,P1口“读引脚”输入时,一定先向锁存器写1;三.实验内容P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
、作输进口接两个拨动开关,、作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来四.实验原理以实验机上74LS273做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
循环时间由准时器控制。
五.实验流程六.实验源程序ORG0000H;程序进口AJMP RIGHT ;跳向标号RIGHT处ORG0030H;程序RIGHT:MOVR0,#08H;置移位次数.MOV A,#0FFH ;置全1CLRC;将Cy清零RIGHT1:RRC A;因为进位Cy=0,因此带进位的循环右移会出现灯的亮灭MOV P1,A;输出至P1口,控制LEDCALL DELAY;调用延时子程序DJNZ R0,RIGHT1 ;R0-1,不为0则转移到标号 RIGHT1处AJMP RIGHT ;绝对转移至RIGHT处;*****************************************************************************;/*延时子程序*/;*****************************************************************************;使用不断的跳转来实现延时,DELAY:MOV R5,#10DELAY1:MOV R6,#50DELAY2:MOV R7,#250DJNZ R7,$DJNZ R6,DELAY2;R6-1,不为0则转移至DELAY2,履行2*200*10us DJNZR5,DELAY1 ;R5-1,不为0则转移至DELAY1,履行2*10usRET;退出子程序履行END七.硬件设计(1)P1口某一I/O口线反转输出电路P1口输出电路八.实验连结图.九.原理:十.仿真器的置步:仿真模式置:8752模式。
面向对象的程序设计(C++)教学大纲

面向对象的程序设计(C++)教学大纲教学目的本课程为高级语言程序设计的入门课程,完全针对零起点的学生,可作为其他信息类相关课程的基础课。
目标是使学生通过本课程的学习,掌握面向对象程序设计的基本概念和方法、C++的基本语法和编程方法;学会使用集成开发环境;掌握程序调试方法;初步了解常用数据结构和非数值算法;初步了解C++标准模板库的使用方法。
教学任务完成《C++语言程序设计(第4版)》教材内容,及《C++语言程序设计(第4版)学生用书》中的实验内容,另有学生自主选题的大作业、选作的论文回报告。
学时:大课30、实验30、课外30、课外讨论10学时。
教学内容的结构课程由4个模块共12个教学单元组成,对应于《C++语言程序设计(第4版)》的十二章内容。
教学活动以及教学方法上的基本要求大课、实验、课外作业、自选题目的大作业、论文和报告结合,学时大课30、实验30、课外30。
另有课外讨论环节。
通过大课讲解基本原理和方法;通过实验课巩固大课内容,并在助教辅导下完成基础实验,当堂由助教验收;课外作业由学生独立完成,并提交清橙考试系统进行评分。
自选题目的大作业要在期中提交选题报告,逐一批改并给出评语,期末提交全部文档及程序并且逐一答辩。
答辩形式为:学生演示5分钟,教师提问5分钟,当即给出成绩。
论文和报告属于加分因素。
课外讨论安排在每次大课之后,加1学时,自愿参加,每人每学期至少参加一次。
内容为:教师对难点进行复习、讲解补充例题,学生提问和讨论。
模块及单元教学目标与任务模块1:程序设计基础单元1 绪论要点:●面向对象程序设计语言的产生和特点,面向对象方法的由来及其基本概念,面向对象的软件工程简介;●信息在计算机中的表示和存储,程序的开发过程。
教学任务:1.1计算机程序设计语言的发展1.2面向对象的方法1.3面向对象的软件开发1.4信息的表示与存储1.5程序的开发过程作业及实验:作业1、实验一单元2 C++简单程序设计要点:●C++语言的发展历史及其特点;●构成C++语句的基本部分—字符集、关键字、标识符、操作等;●C++的基本数据类型和自定义数据类型;●顺序、选择和循环结构。
汇编语言_输入输出程序设计

《汇编语言程序设计教程》之输入输出程序设计指导老师:XXX制作人:XXX一、实验目的通过学习《汇编语言程序设计教程》的相关知识完成输入输出程序的相关操作,理解有关改程序的理论知识,掌握设计报告的流程以及解决问题的方法,并且提高利用计算机分析解决综合性实际问题的基本能力,将理论与实践相结合,实现对知识的升华以及灵活运用,具体步骤如下:1)掌握输入输出指令的使用;2)了解对CMOS RAM的读写3)访问CMOS RAM,编程,以“年/月/日时:分:秒”的格式,显示当前的日期、时间。
观察并记录运行结果。
二、实验原理及基本技术路线图(方框原理图)程序源代码:assume cs:code,ds:datadata segmenttime db 'yy/mm/dd hh:mm:ss',0dh,0ah,'$'cmos db 9,8,7,4,2,0data endscode segmentstart:mov ax,datamov ds,axmov bx,0mov si,0mov cx,6a: push cxmov al,cmos[bx]out 70h,alin al,71hmov ah,almov cl,4shr al,cland ah,0fhadd ax,3030hmov word ptr time[si],axinc bxadd si,3pop cxloop amov ah,6mov al,0mov bh,1fhmov cx,0mov dx,184fhint 10hmov ah,2mov bh,0mov dh,13mov dl,32int 10hmov dx,offset timemov ah,9int 21hmov ax,4c00hint 21hcode endsend start三、所用仪器、材料(设备名称、型号、规格等)Masm 6.0,debug。
四、实验方法、步骤1.使用masm6.0将所写的程序进行编译,生成exe文件,运行。
科学计算与Matlab语言 教学大纲

科学计算与Matlab语言一、课程说明课程编号:010631Z10课程名称:科学计算与Matlab语言/ Scientific computing with Matlab language 课程类别:专业教育课程学时/学分:32/2先修课程:程序设计设计基础、高等数学、线性代数适用专业:生物医学工程教材、教学参考书:1.(美)穆尔著,高会生等译. MATLAB实用教程(第二版),电子工业出版社,2010.2.孙蓬主编,曾雷杰等编著. MATLAB基础教程,清华大学出版社,20113.薛山. MATLAB基础教程,清华大学出版社,2011.4.占海明.基于MATLAB的高等数学问题求解,清华大学出版社,2013.5.薛定宇,陈阳泉.高等应用数学问题的MATLAB求解(第三版),清华大学出版社,2013.二、课程设置的目的意义该课程是生物医学工程专业的计算机应用技术课程。
目的是使学生掌握Matlab的基本使用方法,具备利用matlab程序解决工程技术问题的基本能力。
为后续《数字信号处理》、《数字图像处理》、《医学信号处理》、《医学图像处理》等课程,以及编程实践和毕业设计等提供程序设计知识与能力。
三、课程的基本要求知识:掌握MATLAB的数据类型、矩阵输入和操作方法、语法结构、函数的使用以及二维、三维绘图功能,符号代数基本方法,并能够熟练地将MATLAB 应用于学习中,解决相关课程中较为复杂的数学计算问题;能力:注重提高学生解决问题的能力、软件应用能力,尤其是工程技术问题的Matlab解决能力;培养较强的自主学习能力、科技创新能力、工程实践能力;素质:培养学生严谨、规范、理论联系实际的科学态度。
积培养坚持不懈,细心谨慎,实事求是的科研精神。
四、教学内容、重点难点及教学设计五、实践教学内容和基本要求注:要求学生每次实验前完成初步的设计,实验期间进行调试与共性问题讲解。
六、考核方式及成绩评定教学过程中采取讲授、讨论、分析、作业、实验、课前导学的方式进行,注重过程考核,考核方式包括:笔试、作业、讨论、课内互动、实验等;过程考核占总评成绩的50%,期末考试点50%。
c语言程序设计实验总结

C语言程序设计实验总结摘要该文档总结了我在C语言程序设计实验中的经验和教训。
通过这些实验,我对C语言编程的基本概念和技巧有了更深入的理解和掌握。
本文将综合分析每个实验的目标、方法和结果,并总结了我在实验中遇到的问题以及解决方法。
引言C语言是一种通用的高级程序设计语言,广泛应用于各个领域。
通过进行C语言程序设计实验,我们可以更好地了解C语言的语法和用法,提高我们的编程能力和问题解决能力。
本文将基于我在实验中的经验,对每个实验进行详细描述和总结。
实验一:基本输入输出程序设计实验一旨在加深对C语言程序设计的理解,熟悉基本的输入输出操作。
我们需要编写程序,实现基本的数据输入和输出,并进行简单的运算。
这个实验让我对C语言中的输入输出和基本数据类型有了更深入的理解。
实验二:条件语句和循环语句的应用实验二要求我们掌握条件语句和循环语句的使用方法,并能够通过这些语句解决实际问题。
我学会了使用if语句进行条件判断,以及使用for和while循环进行迭代操作。
通过这个实验,我可以更好地掌握程序流程控制和代码逻辑。
实验三:一维数组的应用实验三着重让我们学会使用一维数组来存储和处理大量的数据。
在这个实验中,我学会了声明和初始化数组,以及使用循环结构遍历数组元素。
这个实验对我后续的数据处理有了很大的帮助。
实验四:字符串处理实验四主要教我们如何处理字符串和字符数组。
在实验中,我学会了使用字符数组来存储和操作字符串,同时,了解了一些常见的字符串处理函数,如strlen、strcpy等。
这个实验让我更加熟悉字符串的处理方法。
实验五:结构体的应用实验五要求我们学会使用结构体类型来定义自定义数据类型,并通过结构体变量来访问结构体成员。
在实验中,我学会了如何定义和使用结构体类型,并能够通过结构体变量操作结构体成员。
结构体的灵活性和可扩展性让我在实际编程中受益匪浅。
实验六:指针的应用实验六是C语言程序设计实验中最重要的一部分。
通过实验,我对指针的概念和用法有了更深入的理解。
java实验指导书

实验一java开发环境及语言基础实验目的(1)确保正确配置java开发环境。
(2)了解javac和java命令的使用。
(3)熟悉java中的运算符。
(4)掌握条件语句和循环语句的使用。
(5)掌握通过命令行参数接受数据。
(6)掌握用Scanner类接受数据。
实验内容(1)在控制台中输入java命令,查看输入结果。
(2)编写一个java程序,计算半径为3.0的圆周长和面积并输出结果。
(3)求a+aa+aaa+...+a...a(n个)的和,其中a为1~9之间的整数。
例如,当a=3、n=4时,求3+33+333+3333的和。
(4)给定一个正整数m,统计其位数,分别打印每一位数字,再按照逆序打印出各位数字。
(5)用Scanner类方法输入三角形三边求三角形面积。
实验要求(1)JDK的安装及配置。
(2)在DOS及eclipse下编辑、编译运行第一个java程序:hello world。
(3)求圆周长和面积用方法实现,主函数调用。
(4)从命令行输入1~9之间的整数a,当所求的和大与106时,输出相应的a值及所求的和值。
(5)用Scanner类的方法输入正整数m,m的值不应该超过99999,否则给出错误信息。
应引入包:import java.util.Scanner,然后在需要的方法中实例化对象:Scanner sc = new Scanner(System.in),最后调用对象的next方法,如int n=nextInt(),接受整数。
实验二数组实验目的(1)掌握数组的定义和使用方法。
(2)熟悉数组的排序、查找的方法。
(3)巩固循环的使用。
实验内容(1)使用for循环,将二维数组的行与列互换,即完成矩阵的转置。
(2)编写数组的排序程序。
(3)编写杨辉三角。
实验要求(1)编写一个界面1 选择排序2 冒泡排序3插入排序4 快速排序5 退出当选择1、2、3、4、5的时候完成相应的功能。
(2)杨辉三角形状为等腰三角形实验三字符串实验目的(1)掌握正则表达式的使用。
面向对象程序设计(Java)实验指导书

10 信息管理与信息系统 专业
雷金娥编 2012 年 9 月
目录
实验一 Java Application 程序的编辑、编译和运行 ..................................... 2 实验二 Java 程序设计基础.................................................................................. 4 实验三 类的封装 ................................................................................................... 5 实验四 类的继承 ..................................................................................................... 6 实验五 类的多态 ..................................................................................................... 8 实验六 接口与实现接口的类 ............................................................................. 12 实验七 图形用户界面设计 ................................................................................. 14 实验八 线程设计 ................................................................................................. 16 实验九 输入/输出流与文件操作......................................................................... 18 实验十 数据库应用设计 ..................................................................................... 20
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验六输入输出流与文件一、实验目的1.理解数据流的概念2.理解Java流的层次结构3.理解文件的概念二、实验要求1.掌握字节流的基本使用方法2.掌握字符流的基本使用方法3.能够创建、读写、更新文件三、实验内容(一)运行以下程序1.使用标准数据流的应用程序标准数据流指在字符方式下(如DOS 提示符)程序与系统进行输入输出的方式,键盘和显示器屏幕是标准输入输出设备,数据输入的起点为键盘,数据输出的终点是屏幕,输出的数据可以在屏幕上显示出来。
1.程序功能:将键盘上输入的字符在屏幕上显示出来2.编写KY10_1.java 程序文件,源代码如下。
class KY10_1{public static void main(String[] args) throws java.io.IOException {byte buffer[]=new byte[10];System.out.println("从键盘输入不超过10 个字符,按回车键结束输入:");int count =System.in.read(buffer);//读取输入的字符并存放在缓冲区buffer 中System.out.println("保存在缓冲区buffer 中元素的个数为:"+count);System.out.println("buffer 中各元素的值为:");for (int i=0;i<count;i++){System.out.print(" "+ buffer[i]);//在屏幕上显示buffer 元素的值}System.out.println();System.out.println("输出buffer 字符元素:");System.out.write(buffer, 0, buffer.length);}}3.编译、运行KY10_1.java 文件。
2. 使用文件输入输出流的应用程序1.程序功能:将保存在本地机当前文件夹中的KY10_2.HTML 文本文件的内容在屏幕上显示出来,然后将其另存为KY10_2.txt 文件。
2.编写KY10_2.java 程序文件,源代码如下import java.io.*;public class KY10_2 {public static void main(String[] args) throws IOException {FileReader in=new FileReader("KY10_2.HTML");//建立文件输入流BufferedReader bin=new BufferedReader(in);//建立缓冲输入流FileWriter out=new FileWriter(" KY10_2.txt",true);//建立文件输出流String str;while ((str=bin.readLine())!=null) {//将缓冲区内容通过循环方式逐行赋值给字符串strSystem.out.println(str);//在屏幕上显示字符串strout.write(str+"\n");//将字符串str 通过输出流写入KY10_2.txt 中}in.close();out.close();}}3.编译、运行程序3. 使用随机文件类的应用程序使用文件输入类FileReader 只能将文件内容全部读入。
如果要选择读入文件的内容,可使用随机文件类RandomAccessFile。
1.程序功能:建立数据流,通过指针有选择的读入文件内容。
2.编写KY10_3.java 程序文件,源代码如下。
import java.io.*;class KY10_3 {public static void main(String args[]) {String str[]={"First line\n","Second line\n","Last line\n"};try {RandomAccessFile rf=new RandomAccessFile("KY10_3.txt", "rw");System.out.println("\n 文件指针位置为:"+rf.getFilePointer());System.out.println("文件的长度为:"+rf.length());rf.seek(rf.length());System.out.println("文件指针现在的位置为:"+rf.getFilePointer());for (int i=0; i<3; i++)rf.writeChars(str[i]); // 字符串转为字节串添加到文件末尾rf.seek(10);System.out.println("\n 选择显示的文件内容:");String s;while ((s=rf.readLine())!=null)System.out.println(s);rf.close();}catch (FileNotFoundException fnoe) {}catch (IOException ioe) {}}}3.编译并运行程序4.使用数据输入输出流与文件输入输出流类的应用程序使用数据输入流DataOutputStream 和数据输出流DataInputStream 可以读取或写入任何Java 类型的数据,不用关心它们的实际长度是多少字节。
一般与文件输入流FileInputStream 和输出流类FileOutputStream 一起使用。
1.程序功能:将整型数据和字符串对象通过数据输出流写到文件中。
将文件中的整型数据和字符串对象通过数据输出流读出,并在屏幕上显示文件中的内容。
2.编写KY10_4.java 程序文件,源代码如下。
import java.io.*;public class KY10_4{public static void main(String arg[]){try{ //添加方式创建文件输出流FileOutputStream fout = new FileOutputStream("KY10_4.txt",true);DataOutputStream dout = new DataOutputStream(fout);dout.writeInt(1);dout.writeChars("罗马"+"\n");dout.writeInt(2);dout.writeChars("北京"+"\n");dout.close();}catch (IOException ioe){}try{FileInputStream fin = new FileInputStream("KY10_4.txt");DataInputStream din = new DataInputStream(fin);int i = din.readInt();while (i!=-1) //输入流未结束时,输入流结束时i 为-1{System.out.print(i+" ");char ch ;while ((ch=din.readChar())!='\n') //字符串未结束时System.out.print(ch);System.out.println();i = din.readInt();}din.close();}catch (IOException ioe){}}}3.编译并运行程序(二)补全填空1.文件加密程序模板SecretExample.javaimport java.io.*;public class SecretExample{public static void main(String args[ ]){File fileOne=new File("hello.txt"),fileTwo=new File("hello.secret");char b[]=new char[100];try{FileReader in=【代码1】//创建指向fileOne的字符输入流FileWriter out=【代码2】//创建指向fileTwo字符输出流。
int n=-1;while((n=in.read(b))!=-1){for(int i=0;i<n;i++){b[i]=(char)(b[i]^'a');}【代码3】// out将数组b的前n单元写到文件。
}【代码4】//out关闭。
in=【代码5】//创建指向fileTwo的字符输入流。
System.out.println("加密后的文件内容:");while((n=in.read(b))!=-1){String str=new String(b,0,n);System.out.println(str);}in=【代码6】//创建指向fileTwo的字符输入流。
System.out.println("解密后的文件内容:");while((n=in.read(b))!=-1){for(int i=0;i<n;i++){b[i]=(char)(b[i]^'a');}System.out.printf(new String(b,0,n));}【代码7】//in关闭。
7}catch(IOException e){System.out.println(e);}}}2.给文件的内容添加行号程序模板ReadExample.javaimport java.io.*;public class ReadExample{public static void main(String args[ ]){File file=new File("c:/1000","hello.txt");File tempFile=new File("temp.text");try{FileReader inOne=【代码1】// 创建指向文件file的输入流。