1、项目项目2 Java编程基础编程基础 主要内容主要内容v2.1 任务描述任务描述v2.2 变量的定义及输入输出变量的定义及输入输出 v2.3 条件语句条件语句 v2.4 循环语句循环语句 v2.5 数组数组 v2.6 任务实施任务实施 能力要求能力要求v理解变量和常量的概念。理解变量和常量的概念。v了解基本数据类型及其转换方式。了解基本数据类型及其转换方式。v掌握运算符和表达式的使用。掌握运算符和表达式的使用。v掌握各种形式的选择语句。掌握各种形式的选择语句。v掌握各种循环语句的使用。掌握各种循环语句的使用。v掌握数组的应用。掌握数组的应用。2.2 变量的定义及输入输出变量的定义及输入输出 一
2、、一、变量的声明和输出变量的声明和输出v 标识符标识符v关键字关键字v常量常量v变量变量二、二、Java基本数据类型基本数据类型三、三、运算符和表达式运算符和表达式 v【例2-1】在Eplicse中调试LX21程序,验证变量的定义。v 1package ch2;v 2public class LX21 v 3public static void main(String args)v 4/TODO Auto-generated method stubv 5int a=10;v 6double c=23.65;v 7float d=34.65f;v 8char b=d;v 9System.out.
3、println(a=+a);v 10System.out.println(b=+b);v 11System.out.println(c=+c+d=+d);v 12v 13v 程序运行结果:v a=10v b=dv c=23.65 d=34.65一、变量的声明和输出一、变量的声明和输出v变量就是系统为程序分配的一块内存单元,用来存储各种类型的数据。根据所存储的数据类型的不同,有各种不同类型的变量。v变量的三要素:变量名、变量类型、变量的作用域。v变量必须先声明,后使用。vint x=0,y;y=x+3;执行这两条语句的过程中,内存分配及变化情况。X在被取值前必须被初始化。变量的概念与作用变量的概
4、念与作用变量的输出变量的输出 v System是java.lang.*包中的一个类名,out是System类的一个静态成员变量,println方法则是out所引用的对象的方法。向控制台以字符串形式输出对象。可以打印基本类型的数据以及字符串等,+在字符串中代表将字符串相互连接。比如System.out.println(Object),如果Object是基本数据类型,就是char、int、long之类,就输出它们的字符串形式。v 例如:v a=3;System.out.println(a=+a);v 输出结果为:v a=3v 双引号的内容原样输出,变量a输出它的值。vjava对各种变量、类、方法等
5、命名时使用对各种变量、类、方法等命名时使用的字符序列称为标识符。的字符序列称为标识符。vjava标识符的命名规则标识符的命名规则v1、标识符由字母、下划线、美元符(、标识符由字母、下划线、美元符($)或数字)或数字组成。组成。v2、区分大小写,长度无限制。如:、区分大小写,长度无限制。如:peo和和Peov3、标识符尽量要做到、标识符尽量要做到”见名识意见名识意“,且不能与,且不能与关键字重名。关键字重名。java中的标识符中的标识符abstractdoimplementprivatethisbooleandoubleimportprotectedthrowbreakelseinstanceo
6、f publicthrowsbyteextendintreturntransientcasefalseinterfaceshorttruecatchfinallongstatictrycharfianllynativestrictfpvoidclassfloatnewsupervolatilecontinuefornullswitchwhiledefaultif package synchronizedJava中赋以特定的含义,用作专门用途的字符串称为关键字Java中的关键字中的关键字二、二、java的数据类型的数据类型 注意它们的位长、注意它们的位长、默认值!默认值!1.数据类型用来说明常量
7、、变量和表达式的性质和所占内存的大小。2.Java的基本数据类型长度是固定的,可以跨平台自由移植。(c语言的基本数据类型根据平台的不同会有所区别)v 整型常量整型常量 十进制(12),十六进制(0 x12),八进制(012)v 长整型常量长整型常量 13Lv 单精度浮点数 v 5.1f,.4f,2e3f,0fv 双精度浮点数 v 十进制形式;十进制形式;3.14,5.1,.4,0dv 科学计数法形式:科学计数法形式:3.14e2,2e-3v 浮点型常量默认的为浮点型常量默认的为double型型v 布尔常量布尔常量 true和false java中的常量(中的常量(1)v 字符常量字符常量 v
8、a,8,u0027 r表示接受键盘输入,相当于按下了回车键;n是换行;t是制表符,相当于table键;b是退格键,相当于Back Space;是单引号,而“是双引号;是一个斜杠“”。v 字符串常量字符串常量 v“Hello World“,”123”,Welcome nXXXv nullnull常量常量 v null常量只有一个值,用null表示,表示对象的引用为空 java中的常量(中的常量(2)运算符是一种特殊符号,用以表示数据的运算、赋值和比较,一般由一至三个字符组成。运算符主要有以下几种:算术运算符 赋值运算符 关系运算符 逻辑运算符三、三、java中的运算符中的运算符算术运算符算术运算
9、符v“+”除字符串相加功能外,还能把非字符串转换成字符串,如:“x”+123;的结果是“x123”。v对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。int x=3510;x=x/1000*1000;实际运行结果是3000,想想为什么?算术运算符的注意问题算术运算符的注意问题v【例2-3】在项目中创建LX24来理解算术表达式的应用。v 1package ch2;v 2public class LX24 v 3public static void main(String args)v 4int a=10/3;v 5int b=10%3;v 6Syst
10、em.out.println(a=+a);v 7System.out.println(b=+b);v 8v 9算术运算符算术运算符注1:在JAVA里可以把赋值语句连在一起,如:x=y=z=5;在这个语句中,所有三个变量都得到同样的值5。注2:x+=3等效于x=x+3,等于*=,-=,/=依此类推。赋值运算符赋值运算符v【例2-5】Java语言中自增与自减运算符的用法。v 1public class LX26 v 2public static void main(String args)v 3int a=9;v 4a+;/先赋值,然后变量再增加(a会增加1变为10)v 5System.out.p
11、rintln(a=+a);/输出10v 6int b=a+;/先把a的值10赋给b,a再增加1变为11v 7int c=+a;/先把a的值11增加1变为12,再把12赋给cv 8System.out.println(a=+a+b=+b+c=+c);v 9v 10注1:关系运算符的结果都是boolean型,也就是要么是true,要么是false。注2:比较运算符“=”不能误写成“=”,切记!切记!关系运算符关系运算符注1:逻辑运算符用于对boolean型结果的表达式进行运算,运算的结果都是boolean型。注2:“&”和“&”的区别在于,如果使用前者连接,那么无论任何情况,“&”两边的表达式都会
12、参与计算。如果使用后者连接,当“&”的左边为false,则将不会计算其右边的表达式。“|”和“|”的区别与“&”和“&”的区别一样。逻辑运算符逻辑运算符public class TestAnd public static void main(String args)int x=0;int y=3;if(x!=0&y=y/x)/输入程序调试 System.out.println(y=+y);上面例子中,由于if语句的判断条件中的第一个布尔表达式是不成立的,程序就不会判断第二个布尔表达式的值,这就是“短路”。如果两个表达式之间用“&”来连接,如果正好碰到上面所示的特殊情况,程序运行时就会出错“&”
13、和和“&”的区别分析的区别分析运算符的优先级运算符的优先级v【例2-7】给出一个四位数,逆序输出这个数。v参考程序如下:v1public class LX28v2public static void main(String args)v3int num=5426,xnum;/声明变量num存放一个四位数,xnum存放新数v4int gw=num%10;/求余,获得个位数字6v5int sw=num/10%10;/分解,获得十位数字2v6int bw=num/100%10;/分解,获得百位数4v7int qw=num/1000;/分解,获得千位数5v8int xnum=gw*1000+sw*10
14、0+bw*10+qw*1;/v9System.out.println(逆序后的数:+xnum);v10v11v1、通过练习熟悉JAVA语法中的常量、变量,运算符、表达式等概念,并学会使用。v2、巩固JAVA语法规则v3、重点区别算术运算符的前增(减),后增(减)v4、重点区别逻辑运算符的&(与)和&(条件与)小小 结结2.3 条件语句条件语句 本节知识要点v一、一、IfIf语句语句vifvif elsevif else ifvif else if else if elsev二、二、switchswitch语句语句v Java Java 支持用作控制语句的各种编程结构支持用作控制语句的各种编程结
15、构v JavaJava程序通过控制语句来执行,完成一定的任务。程序程序通过控制语句来执行,完成一定的任务。程序是由若干个语句组成的,语句可以是单一的一条语句,是由若干个语句组成的,语句可以是单一的一条语句,如如c=c=a+ba+b,也可以是用大括号也可以是用大括号括起来的一个复合语句。括起来的一个复合语句。JavaJava中的控制语句有以下几类:中的控制语句有以下几类:分支语句:分支语句:if-else,switchif-else,switch 循环语句:循环语句:while,do-while,forwhile,do-while,for 与程序转移有关的跳转语句:与程序转移有关的跳转语句:br
16、eak,continue,break,continue,returnreturn 注释语句:注释语句:/,/*/,/*/v 异常处理语句:异常处理语句:try-catch-finally,throwtry-catch-finally,throw程序的流程控制程序的流程控制1判断语句判断语句if i f(关 系 和 逻 辑 表 达 式关 系 和 逻 辑 表 达 式)语句语句;编程实践:编程实践:调试运行例题调试运行例题test1。生活中使用生活中使用if判断的实例?判断的实例?执行过程:表达式成立执行语句,不成立继续执行后面的一、分支语句(1)v例:分析程序,写出结果vpublic class
17、test1vv public static void main(String args)v int x=5;v if (x0)v System.out.println(“x=+x);v System.out.println(“hello);v v分支语句(1)2if-else if(关系和逻辑表达式关系和逻辑表达式)语句组语句组1;else 语句语句2;编程实践:编程实践:调试运行例题调试运行例题test2。生活中使用生活中使用if-else选择的实选择的实例?例?分支语句(2)v例:分析程序,写出结果vpublic class test3v public static void main(S
18、tring args)v int x=5;int y=10;v if (xy)v System.out.println(“max=+x);v elsev System.out.println(“max=+y);v v分支语句(2)v public class test3v public static void main(String args)v int x=10,y=20;v if (xy)v x+=y;v System.out.println(“x=+x+“y=+y);v v elsev x-=y;v System.out.println(“x=+x+“y=+y;v v 分支语句(2)v
19、例:编写程序,随机产生100以内两个数,输出其中较大值v public class test4v public static void main(String args)v int x,y;v x=(int)(Math.random()*100);/v y=(int)(Math.random()*100);v System.out.println(x=+x);v System.out.println(y=+y);v if (xy)v System.out.println(x=+x);v elsev System.out.println(y=+y);v v 分支语句(2)编编一一程序产生程序产生
20、3个个20以内的随机数作为三角形的三条边以内的随机数作为三角形的三条边,检验是否构成三角形,若可以,输出三条边的长度,检验是否构成三角形,若可以,输出三条边的长度,计算其面积并输出。,计算其面积并输出。提示:提示:1、a,b,c是三角形的三条边,则任意两边的和大于第三边是三角形的三条边,则任意两边的和大于第三边。(或任意两边的差小于第三边)。(或任意两边的差小于第三边)。面积面积=Math.sqrt(s*(s-a)*(s-b)*s-c),其中其中 s=1/2(a+b+c)2、产生一个产生一个x1,x2内的随机整数内的随机整数x x=(int)(Math.random()*(x2-x1+1)+x
21、1)Math.random()产生一个产生一个0,1)区间内的实数。区间内的实数。课堂编程实践课堂编程实践v public class test6v public static void main(String args)v int a,b,c;v double s,area;v a=(int)(Math.random()*20);v b=(int)(Math.random()*20);v c=(int)(Math.random()*20);v System.out.println(a=+a);v System.out.println(b=+b);v System.out.println(c=
22、+c);v if(a+b)c&(a+c)b&(b+c)a)v v s=(a+b+c)/2;v area=Math.sqrt(s*(s-a)*(s-b)*(s-c);v System.out.println(面积=+area);vv elsev System.out.println(构不成三角形);v v v练习:v1、编写程序,任意产生一个100以内的数,判断是否是偶数,并输出相应的信息。v提示:X=(int)Math.random()*100;v2、编写程序,从键盘上输入两个数求其中的最大值v3、输入成绩,判断是否及格if else语句语句v1、进一步掌握java的运算符、表达式v2、掌握i
23、f语句的各种格式和用法v3、理解java输入的完成。v Java应用程序可以接收命令行传入的参数,这些参数被存放到main方法的参数数组args中。如果要传入数字供程序使用,把数字字符串转化为对应类型的数字。Integer.parseInt(args0);v4、随机数产生的方法v扩展:输入数据的方法还有一种用vBufferedReader in=new BufferedReader(new InputStreamReader(System.in);小小 结结v import java.io.*;v public class testv public static void main(Strin
24、g args)v String s=;v int x=0;v tryv vBufferedReader in=new BufferedReader(new InputStreamReader(System.in);v s=in.readLine();v x=Integer.parseInt(s);v v catch(IOException e)v v v if(x60)v System.out.println(及格);v elsev System.out.println(挂了);v v 求分段函数(if-elseif-else)Y=-x2x-1(x0)(0 x5)(x5)x+10if else
25、 ifv public class test v public static void main(String args)v int x=Integer.parseInt(args0);v int y=0;v if (x=0&x10)v y-=x;v elsev y*=x;v System.out.println(“y=+y);v v if else ifswitch(算术表达式算术表达式)case value1:statement1;break;case value2:statement2;break;case valueN:statemendN;break;default:defaultS
26、tatement;二、switch语句v调试P35例2-14问题:1.程序中程序中switch语句中变量语句中变量switchValue是什么类型?是什么类型?可以是可以是float类型吗?可以是类型吗?可以是char类型吗?类型吗?2.程序中程序中break语句的作用是什么?语句的作用是什么?break语句用来在执行完一个语句用来在执行完一个case分支后,使程序跳出分支后,使程序跳出switch语句,即终语句,即终止止switch语句的执行(在一些特殊情况下,多个不同的语句的执行(在一些特殊情况下,多个不同的case值要执行一组相值要执行一组相同的操作,这时可以不用同的操作,这时可以不用b
27、reak)。)。3.程序中程序中default的的作用是什么?作用是什么?4.switch语句与语句与if-else if-else语句相比较,有何优势?语句相比较,有何优势?switch语句2.4 循环语句循环语句引入问题编一程序求1-100的和并输出。1 如何实现?2 用循环语句实现3 写出C语言的实现代码4 C 循环语句由哪几个部分组成?Java的循环语句有三种形式的循环语句有三种形式,while 循环语句循环语句vfor 循环语句循环语句vdowhile循环语句循环语句 其中while和for循环语句对应当型结构(图2-5),dowhile语句对应直到型结构(图2-6)。当型结构直到型
28、结构Java循环语句循环语句循环语句由四个部分组成:循环语句由四个部分组成:v初始化部分(初始化部分(initialization)initialization)v循环条件部分循环条件部分(loop-condition)(loop-condition)v循环体部分循环体部分(body)(body)v迭代部分迭代部分(iteration)(iteration)Java循环语句的组成部分while 只要指定的条件为 true,while 循环则执行一个 语句或一组语句语法语法int count=0;while(count 10)System.out.println(count);count+;示例
29、示例while(测试)/语句 被执行被执行条件=true循环循环 1循环循环 1v【例2-16】分析程序理解while语句的运行结果。v 1package ch2;v 2public class LX216 v 3public static void main(String args)v 4int i=1;v 5while(i=3)/判断循环条件是否成立v 6System.out.println(i=+i);v 7i+;v 8v 9v 10 do-whiledo-while 循环执行某些语句,直到指定的条件为真。此循环确保循环体至少执行一次语法do System.out.println(cou
30、nt);count+;while(count 10)示例do /语句 while(测试);被执行被执行条件条件=true循环循环 2forfor 循环主要用于按预定的次数执行语句或语句块语法for(count=0;count 0;count+)注意:格式的多种写法p36页循环循环 31 使用while语句int count=1;int sum=0;while(count=100)sum+=count;count+;3 使用dowhile语句int count=1;int sum=0;do sum+=count;count+;while(count=100);2 使用for语句int sum=0
31、,count;for(int count=0;count=100;count+)sum+=count;找出三种找出三种语句形式中的语句形式中的四个组成部分四个组成部分?比较三种循比较三种循环语句的差异环语句的差异。将循环初始。将循环初始值值count设为设为101,观察其观察其sum的值。的值。上机验证上机验证三段代码三段代码1-100求和的求和的Java实现实现v1、100以内的偶数和(奇数和)以内的偶数和(奇数和)v2、求、求5!=?v3、求水仙花数(三位数如、求水仙花数(三位数如 153=1*1*1+5*5*5+3*3*3)练 习break语句的作用是终止包含语句的作用是终止包含brea
32、k语句的程序块,其语法语句的程序块,其语法格式为:格式为:break label;break语句有两种用法:语句有两种用法:(1)不带标号的)不带标号的break语句。语句。可用在可用在switch、while、for和和do-while循环语句中,用来终止开关语句和循环语句循环语句中,用来终止开关语句和循环语句。(2)带标号的)带标号的break语句。语句。用在多重循环语句中,可从内用在多重循环语句中,可从内层循环中终止外层循环,将要终止的外层循环语句需用标层循环中终止外层循环,将要终止的外层循环语句需用标号标识。号标识。调试p42例23break语句语句 continue语句只能用在循环中
33、,它的作用是终止本次循环,执行语句只能用在循环中,它的作用是终止本次循环,执行下一次循环。语法格式如下:下一次循环。语法格式如下:continue label;continue语句有带标号和不带标号两种形式。语句有带标号和不带标号两种形式。(1)不带标号的不带标号的continue语句语句在在while或或do while语句中使程序语句中使程序流程直接跳转到循环条件的判断处,在流程直接跳转到循环条件的判断处,在for 语句中则直接计算循环语句中则直接计算循环变量的值,然后再根据循环条件决定是否继续循环。变量的值,然后再根据循环条件决定是否继续循环。(2)带标号的带标号的continue语句语
34、句,可以终止内循环,直接跳到外层循,可以终止内循环,直接跳到外层循环处执行其下一轮循环,这里外层循环处要用标号标识。环处执行其下一轮循环,这里外层循环处要用标号标识。调试例2-16Continue语句语句v两种跳转语句为:break continue break 语句:用于强行终止语句块的执行,语句:用于强行终止语句块的执行,将 break 关键字引入循环,避免不必要的执行 continue语句:只能用在循环中用于终止某次循语句:只能用在循环中用于终止某次循环过程,跳过循环语句块中环过程,跳过循环语句块中continue语句下面未语句下面未执行的语句,开始下一次循环。执行的语句,开始下一次循环
35、。练习:输出练习:输出100以内以内7的倍数的倍数跳转语句跳转语句v class test3v vpublic static void main(String args)vvint num,count=0;v for(int i=1;i=100;i+)v if(i%7=0)/if(i%7!=0)continuev System.out.print(i+“”);v count+;v if(count=10)v System.out.println();v v v v int number=29;for(int i=2;i number;i+)if(number%i=0)System.out.pr
36、intln(number+“是非质数);continue;System.out.println(number+“是质数);v1 1、分析程序,理解、分析程序,理解continue和breakv2 2、换种方法、换种方法跳转语句跳转语句v class test4v vpublic static void main(String args)vvint number=17;int i;vboolean flag=true;/标志位的引入v for(i=2;i number;i+)v if(number%i=0)v flag=false;v break;v v v if(flag=true)v Sys
37、tem.out.println(number+是质数);v elsev System.out.println(number+是非质数);vv v练习:产生10个三位随机数v class test5v vpublic static void main(String args)vvint num,count=0;v while(true)v num=(int)(Math.random()*900+100);v if(num%2=0)v v System.out.println(num=+num);vcount+;v vif(count=10)break;v v v 有时候,为了解决较为复杂有时候,
38、为了解决较为复杂的问题,循环语句的循环的问题,循环语句的循环体也需要用循环语句,这体也需要用循环语句,这种用法就是循环语句的嵌种用法就是循环语句的嵌套使用。套使用。问题:求1!+2!+3!+10!int i,j;long fact=1,sum=0;for(i=1;i=10;i+)/外层循环 for(j=1;j=i;j+)/内层循环 fact*=j;sum+=fact;/累加 fact=1;/清除上一次循环结果,/为下次循环作好准备 内层循环的作用是什内层循环的作用是什么?内层循环的循环么?内层循环的循环条件和外层循环有何条件和外层循环有何关系?关系?请上机调试!请上机调试!循环语句的嵌套使用循
39、环语句的嵌套使用v【例2-26】分析程序结果。v 1package ch2;v 2public class LX226 v 3public static void main(String args)v 4/TODO Auto-generated method stubv 5for(int i=1;i=2;i+)/外循环v 6for(int j=1;j=3;j+)/内循环v 7System.out.println(i+j);v 8v 9v 10循环语句的嵌套使用循环语句的嵌套使用v例2-28:输出3-100之间的素数v 注意:一行输出10个数的方法v练习:P42 知识拓展的相关例题循环语句的嵌套
40、使用循环语句的嵌套使用v 一、基本概念v 数组v 是一个变量,用于将相同数据类型的数据存储在存储单元中 如:int num=5,8,2,3,9v 数组元素v 数组中的数据v 下标变量v 可以用num表示,如num1=8,v 下标v 数组中的数据的位置,可以是表达式,如 numi+12.5 数组数组v一维数组由一列相同类型的数据组成v可以通过指定数组的名称和大小来声明数组如:int a=1,2,3,4;int a=new int4;int a5;/声明数组时,不能指定其长度,编译时将出错 数组的长度用a.length表示定义一个一维数组定义一个一维数组v1、输入数组中的数据(test1)v 方法
41、一:int num=2,5,7,1,9/直接输入v 方法二:用循环,循环变量表示数组下标v 如:int num=new int5;v for(i=0;i5;i+)注意:数据中的数据如何访问:用下标变量 下标变量 numi=I 或者 num=(int)Math.Random()*10v2、输出数组中的数据(test1)用循环v3、数组中的数据如何处理:求累加test3v4、求数组中的最大值的算法(test4)二、教学内容二、教学内容v class test1v vpublic static void main(String args)vvint numbers=8,18,5,2,1,10;v S
42、ystem.out.println(数组中元素的总数为:+numbers.length);v System.out.println(数组中的第一个元素为:+numbers0);v System.out.println(“数组中的最后一个元素为:”+numbersnumbers.length-1);/数组的下标变量可以是表达式vv v class test2 v v public static void main(String args)v vint a,i;va=new int3;/分配内存空间v for(i=0;ia.length;i+)v vai=i;/给数组中的元素赋值,随机数试试v S
43、ystem.out.println(数组中的元素为:+ai);v v v v class test3/10个数的累加和v vpublic static void main(String args)vvint score=65,84,78,81,56,92;v int i;v int sum=0;v for(i=0;iscore.length;i+)/循环变量和下标的关系v v sum=sum+scorei;/下标变量的使用v v sum=sum/6;v System.out.println(sum);vv v 上例中求出成绩最高分,也就是数组的最大值v class test4v vpublic
44、 static void main(String args)vvint score=65,84,78,81,56,92;v int i;v int sum=0;v int max=score0;/假定第一个最大v for(int i=1;i max)v max=score i;v v System.out.println(最大+max);v v 随机产生10个两位数,求出其中的最大值(最小值)v public class test4 v vpublic static void main(String args)vv int a=new int10;v for(int i=0;ia.length
45、;i+)v v ai=(int)(Math.random()*90)+10;v System.out.println(ai+);v v int max=a0;v for(int i=1;ia.length;i+)v v if(maxai)v max=ai;v v System.out.println(最大+max);v v在java.util中专门有Arrays类,提供了数组排序和查找的方法v利用选择排序法或冒泡排序法数数 组组 的的 排排 序序v import java.util.*;v public class test5 v vpublic static void main(String
46、 args)vv int a=65,84,78,81,56,92;v System.out.println(排序前);v for(int i=0;ia.length;i+)v v System.out.print(ai+);v v System.out.println();v System.out.println(排序后);v Arrays.sort(a);v for(int i=0;ia.length;i+)v v System.out.println(ai+);v vv 二维数组二维数组 v【例2-35】实现10行杨辉三角元素的存储以及输出。v 说明:杨辉三角是数学上的一个数字序列,其排列
47、如下:v 1v 1 1v 1 2 1v 1 3 3 1v 1 4 6 4 1v 该数字序列的规律为,数组中第一列的数字值都是1,后续每个元素的值等于该行上一行对应元素和上一行对应前一个元素的值之和。例如,第5行第2列的数字4的值,等于上一行对应元素3和3前面元素1的和。v 杨辉三角第几行有几个数字,使用行号控制循环次数,内部的数值第一行赋值为1,其他的数值依据规则计算。假设需要计算的数组元素下标为(row,col),则上一个元素的下标为(row-1,col),前一个元素的下标是(row-1,col-1)。v public class test5 vpublic static void main
48、(String args)v int i,j;vint a=65,84,78,81,56,92;vint m=a.length;v System.out.println(排序前);v for(i=0;im;i+)v System.out.print(ai+);v System.out.println();v for(i=0;im-1;i+)v for(j=i+1;jaj)v vint t=ai;ai=aj;aj=t;v v System.out.println(排序后);v for(i=0;im;i+)v System.out.println(ai+);v v 选选 择择 排排 序序 法法v一
49、、猜数游戏v二、大乐透彩票抽奖程序2.6 任务实施v一、猜数游戏v本任务的大致设计思路如下:v(1)在Eplicse环境中创建Java程序,添加猜数类GuessNumber。v(2)随机生成一个待猜数字。v(3)定义变量,存储用户输入的数。v(4)用条件语句判断用户输入的数与系统随机生成的数的大小关系,并给出提示。v(5)借用循环,重复执行步骤(4),直到用户猜对数或用户停止猜数为止。2.6 任务实施v二、大乐透彩票抽奖程序v本任务的大致设计思路如下:v(1)首先,要定义两个数组,把抽取的135范围的机器产生的彩票号码(随机数)保存到数组中,并且每一个号码抽取出来;v(2)判断是否和前面的号码
50、重复。这里要用到循环语句,将刚产生的号码和前面保存在数组中的号码进行比较。重复号码不再保存到数组中。v(3)输出数组中的数据,即最终的中奖彩票号码。2.6 任务实施v class Lottery1vpublic static void main(String args)vint lottery=new int7;/创建一个长度为7的整形数组vfor(int i=0;ilottery.length;i+)/该循环用来产生7个号码vlotteryi=1+(int)(Math.random()*35);/产生一个1到36之间的随机整数v /*int j=0;vwhile(ji)/该循环用于避免重复号