04747Java语言程序设计(一)-输入和输出流
《Java语言程序设计(一)》课后习题答案(课程编号04747)

《Java语⾔程序设计(⼀)》课后习题答案(课程编号04747)第⼀章 Java语⾔基础 (5)1.1 指出JA V A语⾔的主要特点和JA V A程序的执⾏过程。
(5)1.2 说出开发与运⾏JA V A程序的重要步骤。
(5)1.3 如何区分应⽤程序和⼩应⽤程序? (5)1.4 说出JA V A源⽂件的命名规则。
(5)1.6 JA V A语⾔使⽤什么字符集?共有多少个不同的字符? (5)1.7 JA V A语⾔标识符的命名规则是什么? (6)1.8 JA V A有那些基本数据类型,它们的常量⼜是如何书写的? (6)1.9 指出下列内容哪些是JA V A语⾔的整型常量,哪些是浮点数类型常量,哪些两者都不是。
(6)第⼆章运算和语句 (7)2.1 Java的字符能参加算术运算吗? (7)2.2 占字节多的变量能直接赋值给占字节少的变量么? (7)2.3 试⽤Java语⾔表达式描述以下数学计算式或逻辑条件: (7)2.4 设在求以下表达式之前,整型变量a的值是4,试指出在求了以下表达式之后,变量a、b和c的值。
(7)2.6 若⼀个数恰好等于它的因⼦之和,则这个数称为“完全数”。
编写程序求1000之内的所有完全数。
(7)2.7 编写输⼊正实数x,求平⽅不超过x的最⼤整数n,并输出。
(8)2.8 输⼊正整数n,输出由n⾏n列星号字符组成的三⾓形图案。
(11)2.9 设有整型变量x和y的值分别为5和110。
试指出执⾏了以下循环语句后,变量x和y的值分别多少? (12)2.10求⼩于999的所有⽔仙花数。
(12)2.11 编程序解百鸡问题:鸡翁⼀,值钱五;鸡母⼀,值钱三;鸡雏三,值钱⼀。
百钱买百鸡。
求鸡翁、鸡母和鸡雏各⼏何? (13)2.12 编写程序,按下⾯的公式计算⾃然对数底e的值:e=1+1/1!+1/2!+1/3!+1/4!+......(13)2.13 编写程序,⽤如下公式计算圆周率PI的近似值:PI=4-4/3+4/5-4/7+4/9-4/11...(14)2.14 回⽂整数是指正读法和反读相同的整数,编写⼀个程序,输⼊⼀个整数,判断他是否为回⽂整数。
04747 java语言程序设计(一)

04747 java语言程序设计(一)第一章JAVA语言基础出题点:1.JA V A语言的特点:强类型、编译和解释、自动无用内存回收功能、面向对象、与平台无关、安全性、分布式计算、多线程。
(P3)2.小应用程序与应用程序的区别(P5)(1)小应用程序只能在与JA VA兼容的容器中运行,可以嵌入在HTML网页内,在网络上发布,当网页被浏览时,在浏览器中运行。
小应用程序的运行还受到严格的安全限制。
而JA V A 应用程序没有这些限制,也不支持网页嵌入和下载运行。
(2)两者在代码编写上也有很大差异。
一个小应用程序必须定义成一个Applet类的子类,应用程序可以是Applet类的子类,也可以不是。
(3)应用程序必须在一个类中定义一个main()方法,该方法代表应用程序的入口。
而小应用程序不必定义main()方法。
它的执行由Applet类中定义的多个方法控制。
3.JA V A应用程序的开过过程(P6)(1)JA V A应用程序,先编写JA V A源程序,源程序经JA V A编译器编译后产生字节码文件(*.class),最后由JA V A解释器解释执行字节码文件。
(2)小应用程序,先编写源程序,然后经JA V A编译器编译后产生字节码文件,最后由WEB 浏览器解释执行字节码文件。
4.标识符:由字母和数字符组成,限定标识符第一个字符不能是数字符。
(P8)5.关键字:均由小写字母组成,关键字不可以用做变量、方法、类或标号的标识符。
(P8)6.基本数据类型:整数类型(判断合法常量,注意区分三种进制允许出现的字符)、浮点数类型(科学计数法表示123.45e1,e两边必须有数字)、字符类型(常用转义字符)、逻辑类型。
非基本数据类型:数组、字符串、类、接口(P8)7.整数类型依次分为:byte(8位)、short(16位)、int(32位)、long(64位)。
(P9)8.浮点数类型分为:float(单精度型32位)、double(双精度型64位)。
04747 java知识点总结

第七章:输入和输出流第一节:数据流的基本概念1.在java中,把不同类型的输入、输出源抽象为流,其中输入或输出的数据成为数据流,用统一的接口表示。
2.数据流是指一组有顺序的、有起点和终点的字节集合。
程序从键盘接收数据或向文件中写数据,都可以使用数据流来完成。
3.流分为输入数据流和输出数据流。
输入数据流只能读不能写;而输出数据流只能写不能读。
从数据流中读取数据是,必须有一个数据源与该数据流相连(FileInput Stream in = new FileInputStream(“javatest.txt”);)(实例化)4.Java.io包中提供了表示数据流的4个基本抽象类(不可以实例化),分别是InputStream、OutputStream、Reader和Writer。
因此涉及数据流操作的程序中,几乎都要使用引入语句:import java.io.*5.为了使对象的状态能够方便地永久保存下来,java.io包中又提供了以字节流为基础的用于对象的永久化保存状态的机制,通过实现ObjectInput和Object Output接口来完成。
6.输入数据流提供的主要操作方法有:(得到-1,标志数据流结束)int read():从输入流读取一个字节的二进制数据int read( byte [ ] b):将多个字节读到数组中,填满整个数组int read( byte [ ] b ,int off , int len): 从输入流中读取长度为len的数据,从数组b中下标为off的位置开始放置读入的数据,读毕返回读取的字节数。
7.void close(): 关闭数据流int available(): 返回目前可以从数据流中读取的字节数long skip(long l): 跳过数据流中指定数量的字节不读取,返回值表示实际跳过的字节数8.如需要反向读取数据流,则使用回推操作(Push Back)Boolean markSupported(): 用于测试数据流是否支持回推操作void mark(int): 用于标记数据流的当前位置,并划出一个缓冲区,其大小至少为指定参数的大小。
最新自考04747《Java语言程序设计(一)》简答题全集资料

1、简述java语言的特点?Java语言是目前使用最为广泛的网络编程语言之一(1分)具有面向对象(1分)与平台无关性(1分)多线程性(1分)动态性等特点(1分)2、简述Java程序的开发过程1使用一个文字编辑器,编写源文件。
(1分)2使用java编译器,编译源文件得到字节码文件。
(2分)3运行java程序,分两种java应用程序必须通过java解释器来解释执行,java小应用程序必须使用解释器和浏览器运行程序。
(2分)3、java源文件的命名规则是什么?如果源文件中有多个类,那么只能有一个类是public类(1分)如果有一个类是public类,源文件的名字必须与这个类的名字完全相同,扩展名是java (2分)如果源文件没有public类,源文件的名字只要和某个类的名字相同,并且扩展名是java (2分)4、怎样区分应用程序和小应用程序?一个java应用程序必须且只有一个类含有main方法,这个类称为应用程序的主类,其main 方法必须被说明为public static void (1分)一个Java Applet小应用程序不再需要main方法,但必须有一个类扩展了Applet类,即它是Applet类的主类。
(2.5分)5、Java中共有哪些基本数据类型?基本类型共有8种,分四类分别是(1分)逻辑型(1分)字符型(1分)整型(1分)浮点型(1分)6、Java中数据类型分别用什么符号来表示?逻辑型用boolean 表示(1分)字符型用char表示(1分)整型共有4种分别是byte、short、long、int (2分)浮点型共两种float和double (1分)7、简答标示符的概念及定义原则标示符是用来标识类名、变量名、方法名、类型名等有效字符序列。
(2.5分)Java语言规定标示符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字,及java中的关键字不能用作标示符。
(2.5分)8、简答什么是强制类型转换及转换格式当把一种数据类型变量的值赋给另一种数据类型时会用到数据转换。
2017年4月Java语言程序设计(一)真题答案+解析+知识点

2017年4月高等教育自学考试全国统一命题考试Java语言程序设计(一)试卷课程代码 04747一、单项选择题(本大题共10小题,每小题1分,共10分)1. 在下列供选的字符串中,不能作为Java整型常量的是A.052B.0x3BEHC.6389D.0x3fedL【答案】B【解析】该题考查Java语言基础知识中基本数据类型中的整数类型。
Java语言中整型常量有十进制、八进制和十六进制三种写法。
A项以数字符0开头,是八进制写法;C项是十进制写法;D项以0x开头,后随字符和英文字母A到F,是十六进制写法,最后的字母L表示该整型为长整型;C项错在最后的字母H,十六进制表示时后随字符和英文字母A到F。
所以C项不能作为Java整型常量。
【知识点】整数类型的四种表示形式2. 在以下供选的关键字中,能用于定义常值变量的是A.finalB.staticC.protectedD.super【答案】A【解析】该题考查Java语言基础知识中的关键字。
Java语言中的关键字被赋予特定的意义,用于表示程序结构、定义和修饰等。
每个关键字在程序中出现有特定位置和使用方法的要求。
B项用于修饰类变量或类方法;C项为访问权限中受保护访问权限关键字,只限子类或者同一包中的类的方法能访问;D项。
A项的意义是最终的,其意思是“不能改变”,修饰变量时,声明该变量的值不能被改变。
所以A项能用于定义常值变量。
【知识点】常用关键字的使用3. 下列Java语句中,不正确的是A.float e=0.0d;B.char c,d=‘a’;C.int $ e,a,b=10;D.double e=0.0f;【答案】A【解析】该题考查Java语言基础知识中基本数据类型间转换关系。
Java语言中的基本数据类型转换分为自动转换和不兼容类型的强制转换两种:当满足两种类型是兼容的和目的类型数的范围比来源类型的大这两个条件时,发生自动转换。
A项是定义单精度实型(float)变量(e)且赋值(0.0d),但是0.0d是双精度实型值,不满足目的类型数的范围比来源类型的大这个条件,在赋值时出现类型不匹配错误,因此是不正确的;B项定义了两个字符型变量(c和d)并对d赋初始值(’a’);C项定义了三个整型变量($e、a和b)并对b赋初始值10;D项定义了一个双精度实型变量(e)并对e赋单精度初始值(0.0f),满足两种类型是兼容的和目的类型数的范围比来源类型的大这两个条件,会自动转换。
Java程序设计-Java-输入输出

假如流对象不再被引用,Java旳垃圾回收机制也会隐式
地关闭它
4
6.1.1 I/O流旳概念
输入流 为了从信息源获取信息,程序打开一种输入流,程序可 从输入流读取信息
输出流 当程序需要向目的位置写信息时,便需要打开一种输出 流,程序经过输出流向这个目的位置写信息
5
6.1.1 I/O流旳概念
25
6.2.1 写文本文件
打开C盘根目录下旳Hello.txt文件
换行有些问题
每次运营这个程序,都将删除已经存在旳”Hello.txt”文件 ,创建一种新旳同名文件
FileWriter旳构造措施有五个,本例是经过一种字符串指 定文件名来创建
FileWriter类旳write措施向文件中写入字符
23
6.2.1 写文本文件
FileWriter类 创建一种磁盘文件 关闭一种磁盘文件 write() 措施 捕获I/O异常 BufferedWriter 类
24
6.2.1 写文本文件
在C盘根目录创建文本文件Hello.txt,并往里写入 若干行文本
import java.io.*; class WriteTxtFile { public static void main (String[] args ) throws IOException {
11
阴影部分为节点流
12
6.1.2 预定义旳I/O流类概述
面对字节旳流
数据源或目旳中具有非字符数据,必须用字节流来 输入/输出
一般被用来读写诸如图片、声音之类旳二进制数据 绝大多数数据是被存储为二进制文件旳,世界上旳
文本文件大约只能占到2%,一般二进制文件要比具 有相同数据量旳文本文件小得多。
04747Java语言程序设计教材程序设计题答案

04747Java语言程序设计(一)2017年版课后思考题与练习题程序设计题参考答案第三章流程控制语句5.1题_____________________________________________________________________________ public class Chapt3_5_1 {public static void main(String[] args) {int n[ ]={2,4,6,8,10};//分别计算2、4、6、8、10int stepmulti=1;for (int i=0;i<n.length;i++){stepmulti*=n[i];System.out.println("n["+i+"]!="+n[i]+"!="+stepmulti);}}}5.2题_____________________________________________________________________________ public class Chapt3_5_2 {public static void main(String[] args) {float n=30.0f;//可以手动修改n值float sum=0.000f;for (float i=1;i<=n;i++)sum=sum+(1/i);System.out.println("S=1+1/2+1/3+.....+1/n="+sum);}}5.3题_____________________________________________________________________________ public class Chapt3_5_3 {public static void main(String[] args) {float n=30.0f;//可以手动修改n值float sum=1.000f;for (float i=1; i<=n;i++)sum=sum+1/(3*i);System.out.println("S=1+1/3+1/6+...+1/3n="+sum);}}5.4题_____________________________________________________________________________public class Chapt3_5_4 {public static void main(String[] args) {int n=7;int i=0;while(i<n){if (i<n/2){for (int j=0; j<i;j++) System.out.print(" ");for (int k=0; k<n-2*i; k++) System.out.print(" * ");}else {for (int m=0; m<n-i-1;m++) System.out.print(" ");for (int k=0;k<n-(n-(i+1))*2;k++)System.out.print(" * ");}i++;System.out.println("");}}}5.5题_____________________________________________________________________________ public class Chapt3_5_5 {public static void main(String[] args) {int n=10;int i=0;while (i<10){for (int j=1;j<n-i;j++)System.out.print(" * ");i++;System.out.println();}}}5.6题_____________________________________________________________________________ public class Chapt3_5_6 {public static void main(String[] args) {for (int i=1;i<10;i++)System.out.print("\t "+i);for (int i=1;i<10;i++){System.out.print("\n"+i+"\t");for (int j=1;j<10;j++)System.out.print(j+"*"+i+"="+i*j+"\t");}}}5.7题_____________________________________________________________________________ import java.util.Scanner;public class Chapt3_5_7 {public static void main(String[] args) {String str;Scanner scan=new Scanner(System.in);System.out.println("请输入一串字符:");str=scan.nextLine();int k=0;goon: for(int i=0;i<str.length();i++){if (!(str.substring(i,i+1).equals(str.substring(str.length()-i-1,str.length()-i)))) {System.out.println("你输入的字符串("+str+")不是回文");k=1;break;}else continue goon;}if (k==0) System.out.println("你输入的字符串("+str+")是回文");scan.close();}}5.8题_____________________________________________________________________________ import java.util.Scanner;public class Chapt3_5_8 {public static void main(String[] args) {int n=0;Scanner scan=new Scanner(System.in);System.out.println("请输入一个整数:");int num=scan.nextInt();for (int i=2;i<num;i++){if (num%i==0){System.out.println(num+"非质数!");break;}else n=1;}if (n==1)System.out.println(num+"是个质数!");scan.close();}}5.9题_____________________________________________________________________________ import java.util.Scanner;public class Chapt3_5_9 {public static void main(String[] args) {Scanner t=new Scanner(System.in);System.out.println("请输入华氏温度:");double tin=t.nextDouble();System.out.println("转换后的摄氏温度为:"+(tin-32)/1.8);t.close();}}5.10题_____________________________________________________________________________ import java.util.Scanner;public class Chapt3_5_10 {public static void main(String[] args) {double s;Scanner leng=new Scanner(System.in);System.out.println("请输入三角形的第一条边长a:");double a=leng.nextDouble();System.out.println("请输入三角形的第二条边长b:");double b=leng.nextDouble();System.out.println("请输入三角形的第三条边长c:");double c=leng.nextDouble();if (a+b<=c||a+c<=b||b+c<=a||Math.abs(a-b)>=c||Math.abs(a-c)>=b||Math.abs(b-c)>=a) System.out.print("您输入的三条边无法构成三角形");//题目未要求判断,可以忽略else {s=(a+b+c)/2;System.out.println("这个三角形的面积S为"+Math.sqrt(s*(s-a)*(s-b)*(s-c)));}leng.close();}}5.11题_____________________________________________________________________________ import java.util.Calendar;//获取系统当年年份需要用到import java.util.Scanner;/***根据本书进度编写的程序,重复代码比较多,读者可在学习后续章节后再优化**/public class Chapt3_5_11 {public static void main(String[] args) {Scanner in=new Scanner(System.in);System.out.println("请输入数字1、2、3选择你要执行的操作,1、输入一个月份,打印当年该月的月历;2、输入当年的一个日期,查询当天是星期几;3、查询两个日期之间相差几天。
自考Java语言程序设计(一)2022年4月真题(04747)

自考Java语言程序设计(一)2022年4月真题及(04747)自考Java语言程序设计(一)2022年4月真题及答案解析(04747)1.[单选题] 下列选项中,不属于Java语言特性或语法成分的是()A.面向对象B.全局变量C.JVMD.多线程2.[单选题] 下列选项中,能作为文档解释的是()A./*我是javadoc 解释*/B.//我是javadoc解释*/C./**我是javadoc 解释*/D./*我是javadoc 解释**/3.[单选题] 下列选项中,不能作为for语句中条件表达式的是()A.k++B.k=10C.k==- lD.true4.[单选题] 关于类的叙述中,正确的是()A.每个类都要有一个main方法B.类中可以不显式定义构造方法C.声明一个类时,必须使用public修饰符D.类具有封装性,故不能访问类的数据成员5.[单选题] 下列选项中,能正确加入如下Java代码段的Test类中,并成为cal()的重载方法的是()public class Test{public void cal(int x,int y,int z){ }//在此处添加cal()的重载方法}A.public int cal(int x, int z){ }B.public int cal(int x, int y, int z){ }C.public int cal (int x,int y,int z) {return 0;}D.public int cal(int x, int y, float z){return 0;}6.[单选题] 下列选项中,能够正确初始化数组in的是()A.int [] m;B.m= {1,2,3,4,5};C.int [] m = new int[5];D.int [] m = new int[5]{l,2,3,4,5};7.[单选题] 下列选项中,能作为Java接口成员的是()A.void aMethodO;B.private void aMethod();C.interface void aMethod();D.protected void aMethodO;8.[单选题] 若程序中有语句FileOutputStream out = new FileOutputStream(“myFile.dat”);, 则选项正确的是()A.如果文件myFiIe.dat存在,则将抛出IOException异常B.如果文件myFile.dat不存在,贝幡抛出IOException异常C.如果文件myFile.dat存在,则将覆盖掉文件中己有的内容D.如果文件myFile.dat存在,则将在文件的末尾开始添加新内容9.[单选题] 若要自行设置容器中组件的位置和大小,则需要执行的操作是()A.调用方法setSize()B.调用方法getContentPane()C.调用方法getPreferredSizeOD.调用方法setLayout(null)和setBounds()10.[单选题] 子线程自动获得的优先级是()A.最低优先级B.最高优先级C.随机的优先级D.父类的优先级11.[填空题] Java编译器将Java程序编译成虚拟机能够识别的二进制代码,这种代码称为______________。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
B.按下“打开/保存”按钮 D.重新输入了一个文件名 )
9.在以下供选择的方法中,不能用于文件随机访问的方法是( .. A.readChar() C.readInteger() B.readLong() D.writeChars()
19.BufferedWriter 类对象能按行输入文件的内容,按行输入的方法是______。readLine() 25. 通过流的构造方法建立文件流对象, 请写出创建输入输出文件流对象的两种常用构造方 法。 FileInputStream( File filename) FileInputStream( String name) FileOutputStream(String name) FileOutputStream(File filename)
第 1 页 共 3 页
输入和输出流
设的两个方法。
accept()
getDescription()
2009/10
6.程序执行方法 showOpenDialog(),能打开“打开文件对话框”,如果该方法的返回值是 JFileChooser.APPROVE_OPTION,则用户执行的动作是( A.对话框非正常关闭 C.按下“撤销”按钮 )
25.某 Java 程序要使用文件输入输出流,请写出该程序所需要的 import 语句。
Impoer java.io.*
第 3 页 共 3 页
2008/10
9.为 16 位 Unicode 字符流提供读和写操作支持的类分别是( )
第 2 页 共 3 页
输入和输出流
A.FileInputStream 类和 FileOutputStream 类 B.InputStream 类和 OutputStream 类 C.FileReader 类和 FileWriter 类 . D.File_Reader 类和 File_Writer 类 19.BufferedWriter 类是提供缓冲式输出的类。程序需要先创建_________对象,再利用这 个对象创建 BufferedWriter 对象。 FileReader
2010/1
9.Java 语言可以用 javax.swing 包中的类 JFileChooser 来实现打开和保存文件对话框。用户 通过文件对话框不可能获得的信息是 ( ... A.文件名称 C.文件内容 . ) C B.文件路径 D.文件对象
19.某程序想为一个 long 型整数文件构造随机读写对象,支持这个要求的类是__________。 RandomAccessFile 25.打开文件对话框时,还可以设置筛选条件,即指定文件的类型。请写出 FileFilter 类预
输入和输出流
输入和输出流 输入和输出流 2010/10
9.在 Java 的类库中,包含实现输入/输出操作的包是( A.java.util C.java.applet B.java.io D.java.awt ) B
19.在 Java 语言中,文件随机访问可以利用______类实现。RandomAccessFile 31.某按钮的监视器方法 actionPerformed()实现将文本区中的内容写入到文本文件 myText.txt 中。 public void actionPerformed(ActionEvent e) try { int n = txtFld.getText().length(); byte buffer[]=new byte[n]; buffer=txtFid.getText().getBytes(); FileOutputStream wf=new FileOutputStream wf. write(buffer, 0,n); ; }catch (IOException ioe){ } } wf.colse() txtFld.setText(ioe.toString()); } ("myText.txt"); {
2009/
9.程序如果要按行输入输出文件的字符流,最合理的方法是采用( A.BufferedReader 类和 BufferedWriter 类 B.InputStream 类和 OutputStream 类 C.FileReader 类和 FileWriter 类 D.File_Reader 类和 File_Writer 类 19.为普通的 8 位字节流文件读和写操作提供支持的类是_________。 OutputStream 25.请写出字符流数据与字节流数据的区别。(P.175) InputStream )