版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Java-初识java1. 写出系统环境变量的配置并进行验证(1) 新建JAVA_HOME环境变量,值为jdk的安装根路径, 例如:C:Javajdk1.7.0。(2) 编辑path环境变量,在其值之后追加 ;jdk安装路径bin文件夹的路径,例如:;C:Javajdk1.7.0bin 或者为: ;%JAVA_HOME%bin(3) 配置后,在cmd窗口中通过javac命令可以查看环境变量是否配置成功。若有提示javac的用法,则配置成功;若提示不认识javac命令,则配置失败。2. 调试下面程序,指出错误public Class HelloWorldApp public void
2、static main(string args) system.out.println(“Hello World!”); 错误1:Class改成class错误2:void static改成static void错误3:string args改成String args错误4:system.out.println改成System.out.println3. 写出调试过程编译和执行的具体命令1) 上述文件保存后的文件名是:HelloWorldApp.java2) 编译命令:javac HelloWorldApp.java3) 编译正确后,产生的另外一个文件全称是:HelloWorldApp.clas
3、s4) 运行该程序的命令:java HelloWorldApp4. 如果上面的编译命令中的HelloWorldApp.java 换成以下格式,写出执行编译结果:javac helloworldapp.java编译可以通过,原因是编译时不区分文件名的大小写。javac HelloWorldApp编译不能通过,原因是编译时文件名应该带.java后缀名。5. 如果上面的运行命令改成以下格式,写出执行结果,如有错误请改正。java helloWorldApp.java找不到名为“helloWorldApp.java”的主类。即找不到“helloWorldApp.java.class”的文件来执行jav
4、a helloworldapp找不到名为“helloworldapp”的主类。即找不到“helloworldapp.class”的文件来执行java HelloWorldApp.class找不到名为“helloworldapp.class”的主类。即找不到“helloworldapp.class.class”的文件来执行6. 输入下面的随机数生成程序,重复上述编译和执行过程,分步写出两个命令执行过程。import java.util.Random;public class MathDemo public static void main(String args) Random rand=new
5、 Random(); int v=rand.nextInt(); System.out.println("你得到了一个"+v); 1) 保存文件名为:MathDemo.java2) 编译命令为: javac MathDemo.java3) 运行程序命令为:java MathDemo4) 如果删除该程序的第一行import语句,重新编译,有何问题?编译不通过。原因是程序中使用到API中的Random类,而该类不在java.lang包中,故应该在源程序的前面通过import java.util.Random;语句把该类加载入程序中。Java-java语言基础1. public
6、class Variable public static void main(String args) int a=10; System.out.println("a="+a); . 写出果程序运行的结果a=10. 修改上述程序,定义一个字符型变量,并定义其初值为'a',然后输出该变量的值,在下面写出修改后的代码片段。代码片段: char a='a'System.out.println("a="+a);结果:a=a. 修改上述程序,定义一个字符型变量,并定义其初值为100,然后输出该变量的值,在下面写出修改后的代码片段。代
7、码片段: char a=100; System.out.println("a="+a);运行结果:a=d. 修改上述程序,定义一个字符型变量,并定义其初值为65536,然后输出该变量的值,在下面写出修改后的代码片段,如果有错误,说明原因。代码片段: char a=65536; System.out.println("a="+a);char a=65536;有错,原因:65536超过了char型的有效范围。. 修改上述程序,定义一个单精度类型的变量,并定义其初值为10.0,然后输出该变量的值,在下面写出修改后的代码片段。代码片段: float a=10.0
8、f; System.out.println("a="+a);运行结果:a=10.0. 修改上述程序,定义一个双精度类型的变量,并定义其初值为10.0,然后输出该变量的值,在下面写出修改后的代码片段。代码片段: double a=10.0; System.out.println("a="+a);运行结果:a=10.0. 替换下面的代码段到上述程序,分析现象。 float f=10.0f; double d=100.0d; f=d; System.out.println("f="+f);现象:f=d; 报错,错误提示如下:Type mis
9、match: cannot convert from double to float改正:f=(float)d;. 替换下面的代码段到上述程序,分析结果。 int a=10; char c='a' a=c+a; System.out.printf("c=%c",a);运行结果:c=k(a的值为107,对应的Unicode字符为k). 声明一个布尔类型的变量,其初值为真。代码片段:boolean a=true; System.out.println("a="+a);运行结果:a=true2. 编写程序,从键盘上输入一个整数作为圆的半径,分别
10、计算并输出圆周长、圆面积。import java.util.Scanner;public class Circle public static void main(String args) Scanner sc=new Scanner(System.in);System.out.println("请输入半径:");double r=sc.nextDouble();double area=Math.PI*r*r;double l=2*Math.PI*r;System.out.printf("面积为:%.2f%n",area);System.out.prin
11、tf("周长为:%.2f%n",l);3. 编写程序,从键盘上输入三个实数,比较大小,分别输出最大值和最小值。import java.util.Scanner;public class Max_Min public static void main(String args) Scanner sc=new Scanner(System.in);System.out.println("请输入三个数:");double a=sc.nextDouble();double b=sc.nextDouble();double c=sc.nextDouble();dou
12、ble max=a>b?a:b;max=max>c?max:c;double min=a<b?a:b;min=min<c?min:c;System.out.println("max:"+max);System.out.println("min:"+min); Java-流程控制1. 编写程序,声明一个double型变量,并任意赋值,然后判断该数是否在1到10000之间,根据结果输出下面其中一行结果(x需用实际的数值代替):The number x is between 1 and 10000.The number x is not
13、 between 1 and 10000.public class one public static void main(String args) double x=485;if(x>=1 && x<=10000)System.out.println("The number "+x+" is between 1 and 10000.");elseSystem.out.println("The number "+x+" is not between 1 and 10000.");2. 分
14、析下面程序,写出运行结果class TestApppublic static void main(String args)for(int i=0;i<10;i+)if(i=3) break;System.out.print(i);答案:0123. 分析switch的作用,写出下面程序运行的结果class SwitchDemopublic static void main(String args) int c=38;switch (c<10?1:c<25?2:c<35?3:4) case 1:System.out.println(" "+c+"
15、; 有点冷。要多穿衣服。");case 2:System.out.println(" "+c+" 正合适。出去玩吧。"); case 3:System.out.println(" "+c+" 有点热。"); default:System.out.println(" "+c+" 太热了!开空调。");1) 当c=38时,运行结果是什么?38 太热了!开空调。2) 当c=8时,运行结果是什么?8 有点冷。要多穿衣服。8 正合适。出去玩吧。8 有点热。8 太热了!开空调。
16、3) 当c=48时,运行结果是什么?48 太热了!开空调。4) 在每个case的输出语句后,添加break语句后,充分执行上述几种情况,分析有何变化,分析写出每次运行结果。当c=38时,运行结果是38 太热了!开空调。当c=8时,运行结果是8 正合适。出去玩吧。当c=48时,运行结果是48 太热了!开空调。4. 通过键盘输入任一个整数,判断其是否是素数,并输出判断结果。import java.util.Scanner;public class four public static void main(String args) int i;Scanner sc = new Scanner(Sys
17、tem.in);System.out.println("请输入一个整数: ");int a = sc.nextInt();if (a <= 0)System.out.println("非法输入");else if (a = 1)System.out.println(a + " 不是素数");else if (a = 2)System.out.println(a + " 是素数");else for (i = 2; i <= Math.sqrt(a); i+) if (a % i = 0)break;if
18、 (i > Math.sqrt(a)System.out.println(a + " 是素数");elseSystem.out.println(a + " 不是素数");5. 通过键盘输入任意两个整数,按照从小到大的顺序输出这两个数。import java.util.Scanner;public class five public static void main(String args) Scanner sc=new Scanner(System.in);System.out.println("请输入2个整数: ");int
19、a,b;a=sc.nextInt(); b=sc.nextInt();if(a>=b) System.out.println("结果为:"+a+" "+b);else System.out.println("结果为:"+b+" "+a);6. 写出下面的代码段执行后,j的值是多少?int i=1, j=0switch(i) case 2:j+=6;case 4:j+=1;default:j +=2;case 0:j +=4;答案:67. 写出下列程序片段中while循环体重复执行的次数int a = 1,b
20、= 1;while ( a <= 1000 )a = 2 * a;b = b + 1;System.out.println( b );答案:10次 b的值是118. 编写一个程序,输出1到200之间所有能被3整除的整数,要求输出时每行输出5个整数。import java.util.Scanner;public class eight public static void main(String args) int k=0;for (int i = 1; i <= 200; i+) if(i%3=0)k+;System.out.print(i+"t");if(k%
21、5=0) System.out.println();9. 编写一个程序,输出一个99乘法表,输出格式如下。1×1=1 1×2=2 2×2=41×3=3 2×3=6 3×3=91×4=4 2×4=8 3×4=12 4×4=161×5=5 2×5=10 3×5=15 4×5=20 5×5=251×6=6 2×6=12 3×6=18 4×6=24 5×6=30 6×6=361×7=7
22、 2×7=14 3×7=21 4×7=28 5×7=35 6×7=42 7×7=491×8=8 2×8=16 3×8=24 4×8=32 5×8=40 6×8=48 7×8=56 8×8=641×9=9 2×9=18 3×9=27 4×9=36 5×9=45 6×9=54 7×9=63 8×9=72 9×9=81public class nine public sta
23、tic void main(String args) for(int i=1;i<10;i+)for(int j=1;j<10;j+)System.out.print(" "+j+"*"+i+"="+i*j);if(i=j) System.out.println();break;Java-数组7. 有如下数组int myArray = 1, 2, 3, 4, 5, 6 ; int yourArray = 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 ; 请利用System.arraycopy方法编写一个程序,
24、复制myArray数组的所有内容到yourArray数组,放在yourArray数组下标0开始的位置,并输出yourArray数组的每个元素。import java.util.Scanner;public class One public static void main(String args) int myArray = 1, 2, 3, 4, 5, 6 ;int yourArray = 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 ;System.arraycopy(myArray, 0, yourArray, 0, myArray.length);for (int j =
25、 0; j < yourArray.length; j+) System.out.print(yourArrayj + " ");System.out.println();8. 有整型数组,按顺序包含元素:10,7,9,2,4,5,1,3,6,8,请编写程序利用Arrays.sort方法对数组进行排序,并输出该数组的每个元素。import java.util.Arrays;public class Two public static void main(String args) int a = 10, 7, 9, 2, 4, 5, 1, 3, 6, 8 ;Arrays
26、.sort(a);for (int j = 0; j < a.length; j+) System.out.print(aj + " ");System.out.println();9. 互换二维数组的行列。import java.util.Scanner;public class Transposition public static void main(String args) int hang,lie; Scanner sc=new Scanner(System.in); System.out.println("请输入原始二维数组的行数、列数:&quo
27、t;); hang=sc.nextInt(); lie=sc.nextInt(); System.out.println(); int array = new inthanglie;/ 定义二维数组 int arrayT = new intliehang;/ 定义转置后的二维数组 System.out.println("请输入原始二维数组的元素:"); for (int i = 0; i < array.length; i+) / 对二维数组中的元素进行赋值 for (int j = 0; j < arrayi.length; j+) arrayij = sc.
28、nextInt(); System.out.println(); System.out.println("原始二维数组的元素如下:"); for (int i = 0; i < array.length; i+) / 对二维数组中的元素进行赋值 for (int j = 0; j < arrayi.length; j+) System.out.print(arrayij + " ");/ 输出数组中的元素 System.out.println(); System.out.println(); System.out.println("
29、转置后的二维数组元素:"); for (int i = 0; i < arrayT.length; i+) / 实现二维数组转置 for (int j = 0; j < arrayTi.length; j+) arrayTij = arrayji; System.out.print(arrayTij + " ");/ 输出数组中的元素 System.out.println(); 10. 编写一个程序,连续输入5个整数,输出他们的平均数,并按格式输出每个数和平均数的差值。(例如平均数为10,则输出格式如:5低于平均数5或11高于平均数1)。import
30、java.util.Scanner;public class four public static void main(String args) int a=new int10;Scanner sc=new Scanner(System.in); int sum=0;for (int i = 0; i < a.length; i+) System.out.println("请输入第"+(i+1)+"个数:"); ai=sc.nextInt(); sum+=ai;double ave=(double)sum/a.length;System.out.p
31、rintln("平均数为:"+ave);for (int i = 0; i < a.length; i+) if(ai>ave)System.out.println(ai+"高于平均数"+(ai-ave);elseSystem.out.println(ai+"低于平均数"+(ave-ai);11. 编写程序利用二维数组存储九九乘法表,并输出该乘法表。public class six public static void main(String args) String a=new String9;for(int i=0;i
32、<a.length;i+)ai=new Stringi+1;for(int j=0;j<ai.length;j+)aij=(j+1)+"*"+(i+1)+"="+(i+1)*(j+1);/遍历输出for(String x:a)for(String y:x)System.out.print(y+"t");System.out.println();12. 补充完整下面的程序,使得程序能够计算出指定字符数组中连续字符块的个数:输入: count<empty > 0a 1aaaaa 1aaabbcccc 3aabbab
33、b 4abcdefg 7import java.util.Scanner;public class eight public static void main(String args) char ch=;/重复用上面的字符数组来初始化,验证你的算法是否正确 int count=1; Scanner sc=new Scanner(System.in); System.out.println("请输入一个字符串:"); String s=sc.nextLine(); ch=s.toCharArray(); if(ch.length=0) count=0; else for (i
34、nt i = 0; i < ch.length-1; i+) if(chi!=chi+1) count+; System.out.println("字符串为:"+s); System.out.println("包含的块个数为: "+count); Java-字符串1. 按照格式 "现在是: 2013年10月22日 星期三 14时20分" 显示当前时间。package first;import java.util.Calendar;public class ShowDateAndTime1 public static void m
35、ain(String args) Calendar c=Calendar.getInstance();System.out.println(String.format("现在是:%1$tY年%1$tm月%1$te日 %1$tA %1$tH时%1$tM分", c);2. 编写程序,当给出一个英文字符串,能够统计其中大写字母、小写字母、数字、空格及其他字符的个数,并且分别输出统计数据,如果碰到了”n”则终止统计。提示:1) 声明并出初始化一个字符串变量:如String s=”hellonMike”;2) s.charAt(0)表示取该字符串的第1个字符h; s.charAt(1
36、) 取第2个字符e,其他依次类推;3) s.length()返回该字符串的字符个数,如”hello”的字符个数是5。package two;import java.util.Scanner;public class Count1 public static void main(String args) String s = "hellonMike"int upperLetter = 0, lowerLetter = 0, digit = 0, space = 0, other = 0;char c;for (int i = 0; i < s.length(); i+)
37、 c = s.charAt(i);if (c = 'n')break;else if (c>='A'&&c<='Z')upperLetter+;else if (Character.isLowerCase(c)lowerLetter+;else if (Character.isDigit(c)digit+;else if (Character.isWhitespace(c)space+;elseother+;System.out.println(" 大写字母个数为:" + upperLetter +
38、 "n小写字母个数为:"+ lowerLetter + "n数字个数为:" + digit + "n空格个数为:" + space+ "n其他字符个数为:" + other);package two;import java.util.Scanner;public class Count2 public static void main(String args) Scanner sc=new Scanner(System.in); String s=sc.nextLine();int upperLetter=0,lo
39、werLetter=0,digit=0,space=0,other=0;char c;for (int i = 0; i < s.length()-1; i+) c=s.charAt(i);if(c=''&&s.charAt(i+1)='n') break;else if(Character.isUpperCase(c) upperLetter+;else if(Character.isLowerCase(c) lowerLetter+;else if(Character.isDigit(c) digit+;else if(Characte
40、r.isWhitespace(c) space+;else other+;System.out.println("字符串:"+s);System.out.println(" 大写字母个数为:"+upperLetter+ "n小写字母个数为:"+lowerLetter+ "n数字个数为:"+digit+ "n空格个数为:"+space+ "n其他字符个数为:"+other);3. 假设s1、s2、s3是三个字符串,如下给出String s1 = “Welcome to Java
41、!”;String s2 = s1;String s3 = new String(“Welcome to Java!”);下列表达式的结果是什么?s1 = s2s2 = s3s1.equals(s2)s2.equals(s3)pareTo(s2)pareTo(s3)/ s1 = s2 true/ s2 = s3 false/ s1.equals(s2) true/ s2.equals(s3) true/ pareTo(s2) 0/ pareTo(s3) 04. 编写程序,从键盘上输入若干个小数,计算这些数的和以及平均值,并将计算的结果在控制台进行输出。(要求用命令行参数输入数据)package
42、 seven;import java.io.IOException;public class Test public static void main(String args) throws IOException double sum = 0;for (int i = 0; i < args.length; i+) sum += Double.parseDouble(argsi);for (String s : args)System.out.print(s + " ");System.out.println();System.out.println("和
43、:" + sum + "t平均值:" + sum / args.length);Java-类与对象1. 写一个名为Rectangle的类表示同一种颜色的矩形类。其成员属性包括宽width、高height,类属性包括颜色color(默认颜色是蓝色),width和height都是double型的,而color则是String类型的。要求该类具有:(1) 合理的构造函数,完成各属性的初始赋值(2) 使用get和set的形式完成各个属性的访问及修改(3) 计算面积的getArea()方法(4) 合理的toString方法。public class Rectangle pr
44、ivate double width, height;private static String color = "蓝色"public Rectangle() this(0.0, 0.0);public Rectangle(double width) this(width, width);public Rectangle(double width, double height) this.width = width;this.height = height;public double getWidth() return width;public void setWidth(
45、double width) this.width = width;public double getHeight() return height;public void setHeight(double height) this.height = height;public static String getColor() return color;public static void setColor(String color) Rectangle.color = color;public double getArea() return width * height;public Strin
46、g toString() return "宽: " + width + "tt高:" + height + "tt颜色: " + color+ "tt面积: " + getArea();public static void main(String args) Rectangle r;System.out.println("创建一个默认初值的矩形:");r = new Rectangle();System.out.println("t" + r);System.out.prin
47、tln("修改具有默认初值矩形的宽为,高为:");r.setWidth(10);r.setHeight(20);System.out.println("t" + r);System.out.println("修改所有矩形对象的颜色为红色");Rectangle.setColor("红色");System.out.println("t" + r);System.out.println("创建一个宽,高的矩形");r = new Rectangle(10, 30);System.
48、out.println("t" + r);System.out.println("创建一个边长为的正方形:");r = new Rectangle(1);System.out.println("t" + r);2. 一副牌Deck有52张扑克Card组成(不含王牌),每张牌有自己的牌型suit(用char类型)和点数rank(用String类型),补充完整下面的类的定义。public class Card char suit;String rank; public Card( char suit,String rank ) this.
49、suit = suit; this.rank = rank; public String toString() return suit+rank; public static void main(String args) Card c=new Card('红',"10"); System.out.println(c); 3. 程序运行后的输出是什么? class TestReferencepublic static void main(String args)int x=2;TestReference tr = new TestReference();Sys
50、tem.out.print(x);tr.change(x);System.out.print(x);public void change(int num)num = num + 1;224. 写出程序运行结果public class Foo public static void main (String args) StringBuffer a = new StringBuffer (“A”);StringBuffer b = new StringBuffer (“B”);operate(a,b);/调用了Foo类的一个类方法System.out.println(a + “,” +b);sta
51、tic void operate (StringBuffer x, StringBuffer y) x.append(y);y = x;AB,B5. 解释下面的程序运行结果输出为什么是null public class My String s; public void My() s = "Constructor" public void go() System.out.println(s); public static void main(String args) My m = new My(); m.go(); null6. 给出下面的类,找出后面的5个声明中,哪些是重载
52、后的构造函数public class ConstOver public ConstOver (int x, int y, int z) A. ConstOver ( ) B. Protected int ConstOver ( ) C. Private ConstOver (int z, int y, byte x) D. Public Object ConstOver (int x, int y, int z) E. Public void ConstOver (byte x, byte y, byte z) 7. 给出下面的类,找出后面的5个声明中,哪些是重载后的setVar函数publi
53、c class MethodOver public void setVar (int a, int b, float c) A. Private void setVar (int a, float c, int b) B. Protected void setVar (int a, int b, float c) C. Public int setVar (int a, float c, int b) return a;D. Public int setVar (int a, int b, float d) return a;E. Protected float setVar (int a, int b, float c) return c;8. 下列程序有错误,调试、写出错误原因并改正。public class VariableScope public static void main(String arg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《求职求职礼仪》课件
- 小学一年级20以内100道口算题
- 小学三年级数学三位数加减法口算题
- 《创业课复习》课件
- 《菌种的概述》课件
- 有文采高考作文点评任是“无情”也动人
- 《发票管理办法学习》课件
- 娱乐休闲行业助理工作总结
- 养老院保安工作评价
- 体育行业助理的主要任务总结
- 储能系统技术服务合同
- GB/T 1094.7-2024电力变压器第7部分:油浸式电力变压器负载导则
- 电大西方行政学说
- 2025版国家开放大学法律事务专科《法律咨询与调解》期末纸质考试单项选择题题库
- 2024小学数学义务教育新课程标准(2022版)必考题库附含答案
- DB32/T 2283-2024 公路工程水泥搅拌桩成桩质量检测规程
- 火灾应急处理程序流程图
- JJRB轻钢龙骨隔墙施工方案要点
- 石油石化用化学剂产品质量认可实施细则
- 快递证明模板
- 木地板木基层隐蔽验收记录.doc
评论
0/150
提交评论