Java语言编程基础_第1页
Java语言编程基础_第2页
Java语言编程基础_第3页
Java语言编程基础_第4页
Java语言编程基础_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章Java语言编程基础 2.1 了解Java的标识符与关键字2.2 了解Java的数据类型2.3 了解Java的变量和常量2.4 了解Java的运算符与表达式2.5 熟悉Java的程序的流程控制2.6掌握Java程序的注释用法2.1 了解Java的标识符与关键字 下面我们通过一个简单的程序来学习java中的标识符与关键字。Example2_1.javapackage Chapter2;/声明程序所在包import java.util.Sca nner;public class Example2_1 public static void main(String args) int x, y,

2、乙 声明三个变量System.out.println(” 请输入两个整数:”);/ Scanner类表示一个文本扫描器,它可以扫描从键盘上输入的字符Scanner in = new Sca nn er(System.i n);方法nextlnt()返回键盘上输入的一个整数x = in.n ext In t();y = in.n ext In t();z = x + y;System.out.pri ntln(x + "+" + y + "=" + z);上例中,类名Example2_1,变量名x、和z,对象名in等均属于用户定义的标识符,而public、

3、class、static、void、int等均属于Java语言本身定义的关键字。一、Java标识符的命名规则Java的标识符命名规则如下:(1)标识符由字母、数字、下划线、美元符号组成,没有长度限制。(2) 标识符的首字符必须是字母、下划线(_)或美元符号($ )。(3) 标识符中的字母是区分大小写的,比如Dog和dog是不同的标识符。(4)常量通常以大写字母英文单词命名,变量通常以小写字母英文单词命名。如果一个变量名由多个单词构成,第一个单词为小写,第二个单 词首字 母大写,如anlnt。(5)类的标识符通常以大写英文字母开始。(6)Java关键字、保留字等不能作为用户自定义标识符使用。关键

4、字(keyword )是指编程语言预先定义的标识符,在程序中有其特殊的含义,用户不能 将其作为自定义标识符。二、Java关键字与保留字abstract (抽象)assert (断言)boolean (布尔)break (中断)byte (字节)catch (捕获)char (字符)class (类)continue (继续)default (默认)do (做)double (双精度)else (否则)enum (枚举)extends (继承)false (假)final (最终)fin ally (最终)float (单精度浮点)for (当时候)if (如果)implements (实现)i

5、mport (引入)instanceof (是的实例)int (整数)in terface (接口)long (长整数)native (本地)new (新建)null (空)package (打包)private (私有)protected (受 保护)public (公共)return (返回)short (短整数)static (静态)strictfp (精确浮点)super (超级的)switch (转换)synchronized (同 步)this (这个)throw (抛出)throws (抛出)transient (暂时的)true (真)try (尝试)void (空的)vola

6、tile (易变的)while (当时候)保留字(reserved word)是指Java语言预留的但暂时没有使用的关键字。对于保留字,用户 也不能将其作为标识符使用。byValue (按值)case (情形)const (常量)future (将来)generic (类属)goto (跳转到)inner (内部)outer (外部)operator (运算符)rest (余数)var (变量)? ?炯? ? ?琰茞? ? U22 了解Java的数据类型一、Java的数据类型Java的数据类型分为简单数据类型和复合数据类型。数据类型关键字所占位数默认值取值范围布尔型boolea n8false

7、true, false字节型byte80-27 27-1 (-128127)短整型short160-215215-1(-3276832767)整型int320-231 231-1 ( -2 147 4836482 147 483 647)长整型long640-263 263-1单精度型float320.03.4e-0383尿+038双精度型double640.01.7e-3081.7e+308字符型char16'u0000''u0000''uFFFF'(1)byte、short、in t、Io ng均用于表示整数,只不过它们的取值范围不同。(2)

8、float和double均用于表示浮点型数值,其区别在于它们所能表示的数值范围 和精度不同。其中, double 型比 float 型可以存储范围更大,精度更高的数值。(3) 字符型(char)用来表示Unicode字符集中的符号,如各种控制字符、字母、数字和汉字。Uni code字符集采用十六进制数表示每一个字符,如u0061 '表示小写字母 a。(4) 布尔型(boolean)只有"真”(true)和"假” (false)两个值。package Chapter2;public class DataTypeConvert public static void ma

9、in(String args) char c1 = 'a', c2 = 'b', c3;/ 声明三个字符变量int x1 = 10, x2, x3; / 声明三个整型变量float y1 = 20.56F, y2;/ 声明两个浮点型变量c3 = (char) (c1 + c2);/两个字符相加,结果为整型。由于c3为字符型,/ 故必须将整型强制转换为字 符型x2 = x1 + c1;/ 整型加字符型(实际上是字符的 ASCII 码值),结果为整型x3 = (int) (x1 + y1); /整型加浮点型,结果为浮点型。由于x3为整型,/其级别低于浮点型,故必须进

10、行强制转换y2 = x1 * y1;/ 整型与浮点型相乘,结果为浮点型System.out.println("c3=" + c3 + "x2=" + x2 + "x3=" + x3);System.out.println("y2=" + y2);二、数据类型转换在编写程序时, 由于参与运算的变量或常量的数据类型不同, 或者表达式结果与目标变量的 数据类型不同,我们会经常碰到数据类型的转换问题。程序的运行结果:c3=? x2=107x3=30y2=205.599991简单数据类型的优先级在 Java 中,为了规范简单

11、数据类型的转换,系统基于各种简单数据类型取值精度的不同,为各种简单数据类型规定了不同的优先级,具体如下:(byte、short、char)宀int宀longt float t double2数据类型的自动转换与强制转换 在参与运算的数据包含多种数据类型, 或者赋值语句中左侧赋值变量和右侧表达式结果类型 不同时,有如下几个原则: 如果赋值变量的数据类型优先级高于表达式结果数据类型的优先级,则表达式结果的数据类型将被自动转换为赋值变量的数据类型。 如果赋值变量的数据类型优先级低于表达式结果数据类型的优先级,或者两者同级,则表达式结果的数据类型必须强制转换为赋值变量的数据类型。三、各种数据类型数据的

12、表示方式1 整型数值 整型数值有三种表示形式:十进制整数、八进制整数和十六进制整数,其特点如下: 十进制表示方法: 由正、 负号和数字 09 组成, 但数字部 分不能以 0 开头 。例如: int x=10, y=-24;八进制表示方法:由正、负号和数字07组成,数字部分以0开头。例如:short x=010, y=-024; 十六进制表示方法:由正、负号,数字09,字母AF或af (表示数值1015)组成,数字部分以0X或0x开头。例如:int x=0xffff, y=-0X3D4;提示:对于长整型变量来说,数值后必须添加后缀字母L或I。同时,由于小写字母“ I”很容易与阿拉伯数字“ 1”混

13、淆,建议使用“ L”。2 浮点型数值浮点型数值有如下两种表示方式:(1) 小数表示法,它由整数部分和小数部分组成,例如:4.0 , 5.32。(2) 科学表示法,它常用来表示很大或很小的数,表示方法是在小数表示法后加“ E”或“ e”及指数部分。但要注意,“ E ”或“ e”前面必须有数字,指数部分可正可负,但必须都是整数。例如:4.2E-5, 3E6。3 字符值字符值有普通字符表示法和转义字符表示法两种。例如:char c1 = 'a', c2 = 'n', c3='人';普通字符表示法是用单引号括起来的一个字符,而且区分大小写,例如: A &

14、#39;和a'是两个不同的字符,而VC '是不合法的。 转义字符表示法的格式为“ 字符”,主要用来表示一些无法显示的字符, 如回车符、换行符、制表符等。字符形式ASCII 值功能'a '0x07响铃'b '0x08退格't '0x09横向制表符'n '0x0a换行'r '0x0d回车' '0x5c反斜杠'''0x27单引号'"'0x22双引号常用的转义字符及其功能:4字符串值字符串值是使用双引号括起来的零个或多个字符,且字符串中可以包

15、含转义字符。例如:Stri ng c1 = "I am Java!" Stri ng c2 = "n 换行";5.布尔型值布型尔数据只有两个值:true和false,分别表示真和假。例如:boolea n cond1 = true, cond2 = false;2.3 了解Java的变量和常量一、声明变量的方法变量是指在程序运行过程中可以发生变化的量,它用于在程序运行时临时存放数据。声明变量的语法格式如下:datatype variable name1 variablename2,variablename3.;datatype表示Java中任意的数据类型

16、;variablenamel表示任意合法的变量名。我们可以同时声明多个变量,各变量之间用逗号分隔。例如: char a; int i1,i2;Java变量又分为成员变量(位于类中方法体以外的变量)和方法变量(位于方法体内的变量,又称局部变量)。对于成员变量而言,我们还可以为其增加访问控制修饰符(如public、private等)和“ static”字样,以限制访问变量的权限和变量的创建方式。例如:public int var2;public static int var3;二、声明常量的方法常量是指在程序运行过程中不能改变的量,它用来记忆一个固定的数值。也就是说,常量只能被赋值一次。在Java

17、中,常量用final来声明,而且常量名全部用大写字母,以便与变量名有所 区别。定义常量的的一般格式如下:final datatype CONSTANTNAME= 值或表达式;datatype表示Java中的任意数据类型,CONSTANTNAME 是用户自定义的合法的常 量名,例如:final double PI = 3.14, RADIUS = 20;final double CIRCUMFERENCE = 2 * PI * RADIUS;2.4 了解Java的运算符与表达式运算符是指具有运算功能的符号。参与运算的数据称为操作数,运算符和操作数按照一定规 则组成的式子称为表达式。根据操作数个数

18、不同,可以将运算符分为三种:单目运算符(又称一元运算符)、双目运算符(又称二元运算符)和三目运算符(又称三元运算符)。根据运算符的性质或用途不同,Java中的基本运算符分为以下几类:(1) 算术运算符:+,-,*,/,%,+,-(2) 关系运算符:,=,=,=,!=(3)逻辑运算符:!,&&(4)位运算符:,& , A,(5) 赋值运算符:=,+=,-=,*=,/= ,%=等(6 )条件运算符:?和:成对使用一、算术运算符及其表达式算术表达式由算术运算符和操作数组成,用于完成基本的算术运算。算术表达式的操作数包括常量、变量等。根据操作数个数的不同,算术运算符可以分为双目

19、运算符和单目运算符两种。分类运算符名称示例示例描述双目运算 符+加法A + BA加B减法A -BA减B*乘法A * BA乘B/除法A / BA除以B%取余运算A%BA除B取余数单目运算 符+正号+A正A负号-A负A卄自增+A , A+A自加1 自减A, A-A自减1、关系运算符及其表达式关系表达式由关系运算符和操作数组成,用来比较两个操作数的大小,比较的结果是一个布尔值(True或False)。操作数可以是算数表达式、布尔表达式、整数、浮点数和字符等。运算符名称示例示例描述=等于A=BA等于B吗?!=不等于A!=BA不等于B吗?>大于A>BA大于B吗?<小于A<BA小于

20、B吗?>=大于等于A>=BA大于等于B吗?<=小于等于A<=BA小于等于B吗?二、逻辑运算符及其表达式逻辑表达式由逻辑运算符和操作数组成。操作数为布尔值或布尔表达式,运算结果是布尔值。运算符名称示例示例描述!逻辑非!AA为true时结果为false, A为false 时结果为true&&逻辑与A&&BA、B同为true时结果为true,否 则为falseII逻辑或A|BA、B同为false时结果为false,否则为trueA逻辑异或AABA、B冋为true时或冋为false时结 果为false,否则为true提示:“ &&

21、 ”和“运算符又分别称“短路与”和“短路或”。如果“短路 与”左边的表达式值为false,则整个逻辑表达式的值为false,编译器不再运算右边的表达式。同样,如果“短路或”左边的表达式值为true,则整个逻辑表达式的值为true,右边的表达式也不会再运算。四、赋值运算符及其表达式 赋值表达式由赋值运算符和操作数组成。赋值运算符用于将其右侧表达式的值赋给左侧变量。在Java中,使用“=”作为赋值运算符,它不同于数学中的等号运算符示例示例表达式等价于+=A += BA = A + B (两数相加)A -= BA = A - B (两数相减)*=A *= BA = A * B (两数相乘)/=A /

22、= BA = A / B (两数相除)%=A %= BA = A % B (两数求余)&=A &= BA = A & B (两数按位与)|=A |= BA = A | B (两数按位或)A =A A= BA = A a B (两数按位异或)<< =A <<= BA = A << B (A 左移 B 位)>> =A >>= BA = A >> B (A带符号右移B位)>>> =A >>>= BA = A >>> B (A无符号右移B位)五、条件运算

23、符及其表达式条件运算符属于三目运算符,即包含3个操作对象,其语法格式如下:expressi on1 ? expressi on2 : expressi on3;表达式expression1的值必须为布尔型,表达式expression2与表达式expression3的值可以为任意类型,且类型可以不同。条件表达式的值取决于expressio n1的判断结果。如果 expressio n1的值为true,则执行表达式 expression2,否则执行表达式 expression3。编写程序时,对于一些简单的选择结构,使用三目运算符来实现会更简捷。例如:int x = 20; int y = 10;i

24、nt max = x >= y ?x : y;六、位运算符及其表达式Java提供了可以直接对二进制数进行操作的位运算符。分类运算符名称示例运算符说明按位运 算按位取反A这是一个单目运算符,用来对操作数中的位取反, 即1变成0, 0变成1&按位与A&B对操作数中对应的位进行与运算。如果相对应的位 都是1,结果位就是1,否则就是0|按位或A|B对操作数中对应的位进行或运算。 如果两个对应的位都是0,结果位为0,否则为1A按位异或AAB对操作数中对应的位进行异或运算。如果对应的位各不相同,例如一个位是1,另一个位是0,结果位为1。如果对 应的位相同,结果位为 0<<

25、左移A<<a将一个数的各二进制位全部左移a位,移出的高位被舍弃,低位补0。例如:6 << 2 = (00000110) << 2= (00011000)= 18移位运 算>>带符号右 移A»a将一个数的各二进制位全部右移a位,移出低位被舍弃,符号位不变,且逐次右移(称为符号位扩展)例如:9>>2= (00001001 ) >>2= (00000010 ) =2-9>>2= (11110111) >>2= (11111101 ) =-3其中0 , 1表示符号位>>>无付号右

26、 移A>»a与带符号右移基本相冋,其区别是符号位右移,最高位补0。例如:-9 >>> 2 =(11110111)>>> 2= (00111101 )=0x3d七、运算符的优先级运算符的优先级决定了表达式中运算符执行的先后顺序,而通过改变运算符的结合方向和使用括号可以改变执行的顺序。优先级二运算符结合方向1(),(下标运算符,引用数组兀素),(分量运算 符,用于引用对象属性和方法)从左向右2,+ (正),-(负),,+,-从右向左3*, /, %从左向右4+ (加),-(减)从左向右5<<,>>,>>>

27、从左向右6<,<=,>,>=,instanceof从左向右7= !=? 从左向右8& (按位与)从左向右9A (接位异或)从左向右10(按位或)从左向右11&& (逻辑与)从左向右12| (逻辑或)从左向右13?:从右向左14= ,+=,-= , *= , /=, %=,&= , |=, A= , =, <<=, >>=, >>> =从右向左2.5熟悉Java程序的流程控制语句Java的程序流程控制分为顺序结构、选择结构、循环结构和跳转语句。一、顺序结构顺序结构就是按照程序代码先后顺序自上而下地执

28、行,直到程序结束,中间没有任何判断和跳转。二、选择结构选择结构(又称分支结构)用于判断给定的条件,根据判断的结果来控制程序的流程。选择语句包括if语句和switch语句,它们用来解决实际应用中按不同情况进行不同处理的问题。1. if语句if语句是通过判断给定表达式的值来决定程序流程的。if语句有多种形式,最常见的有如下三种:第一种形式:if (expressi on)stateme nt;第二种形式:if (expressi on)stateme nt;elsestateme nt;表达式expression的结果只能是布尔型,即此表达式的结果只能是true或false。当表达式express

29、ion为true时执行if所对应的代码块,否则,如果有else则执行else对应的代码块。第二种形式和第三种形式是相通的,如果第三种形式中else if代码块不出现,则变成第二种形式。else语句必须和if或else if配对使用,else总是与离它最近的if或else if配对,可以通过大括号来改变配对关系。第三种形式:if (expressi on)stateme nt;else if(expressi on)stateme nt;/可以有零个或多个 else if语句else /最后的else语句也可以视情况省略stateme nt;实例2-1计算税款在我国,个人所得税是基于纳税人的情况

30、和应征收入计算的。纳税人情况共分为三种:单身纳税人、已婚纳税人和家庭纳税人。另外,对于不同情况的纳税人,其税率是分档计算的, 中国2008年的税率如下表所示。例如:如果是单身纳税人,可征税收入为10000元,则前6000元的税率为10%,后4000元的税率为15%,则需要缴纳的税额为1200元。税率单身纳税人已婚纳税人家庭纳税人10%低于6000Y低于等于12000¥低于等于10000¥15%6001 ¥-2795012001¥¥ -46700¥10001 ¥ -37450¥27%27951¥ -6770

31、0¥467001¥-112850¥37451 ¥ -96700¥30%67701¥-141250¥112851¥-171950¥96701 ¥-156600¥35%14251 ¥ 及以 171951¥及以上上156601 ¥及以上【技术要点】程序定义两个变量分别表示纳税人的情况和可征税收入,其中用0表示单身纳税人,1表示已婚纳税人,2表示家庭纳税人。对每一种纳税人的情况,有五种税率,每种税率对应特定的可征税收入。例如:一个单身纳税人的收入是 10 0000

32、元,则6000元部分的税率为10% ,6000-27950部分为15%, 27950-67700 部分为 27%,67700-100000 部分为 30%。步骤1:启动Eclipse,在Chapter2包中创建类 ComputeTax,并编写如下代码。/ ComputeTax.javapackage Chapter2;import java.util.Scanner;public class ComputeTax public static void main(String args) double income = 0.0; /定义可征税收入int status = 0;/定义纳税人的情况d

33、ouble tax = 0;/定义税额/提示用户输入纳税人的类型System.out.println(" 请输入纳税人的类型 :0-单身, 1-已婚, 2-家庭 ");Scanner inStatus = new Scanner(System.in);if (inStatus.hasNextInt() status = inStatus.nextInt(); /输入纳税人的类型System.out.println(" 请输入可征税收入: ");Scanner in = new Scanner(System.in);if (in.hasNextDouble

34、() income = in.nextDouble(); /输入可征税收入if (status = 0) /计算单身纳税人的缴纳税额if (income <= 6000)tax = income * 0.10;else if (income <= 27950)tax = 6000 * 0.10 + (income - 6000) * 0.15;else if (income <= 67700)tax = 6000 * 0.10 + (27950 - 6000) * 0.15 + (income - 27950)* 0.27;else if (income <= 1412

35、50)tax = 6000 * 0.10 + (27950 - 6000) * 0.15 + (67700 - 27950) * 0.27+ (income - 67700) * 0.30;elsetax = 6000 * 0.10 + (27950 - 6000) * 0.15 + (67700 - 27950) * 0.27+ (141250 - 67700) * 0.30 + (income - 141250) * 0.35; else if (status = 1) /计算已婚纳税人的缴纳税额 else if (status = 2) /计算家庭纳税人的缴纳税额System.out.p

36、rintln(”纳税人需要缴纳的税额为” + tax + " ¥ ");步骤 2:保存文件并运行程序 ,程序的运行结果如下所示。2 switch 语句switch 语句(多分支语句)是通过数据匹配的方式实现程序的多分支控制。switch (expression)case value1:statement1;break;case value2: statement2; break; /可以有多个case代码块case value N: statementN; break;default:default statement; 表达式 expression 的返回值类型

37、只能是 char、 byte、short 或 int 型。switch 语句先取得表达式 expression 的返回值,然后根据返回值依次与每个 case 语句所对 应的valuel, value2,valueN值匹配,如果匹配成功则执行对应的代码块。case 语句所对应的 value 值必须为常量,而且各 value 值应当不同。break语句用来在执行完相应的case分支语句后跳出switch语句,否则将顺序执行后面的语句。default 是可选的, 当表达式的值与任何的 value 值都不匹配时, 则执行 default 代码块。 如果 没有 default 语句时,则程序不做任何操作

38、,直接跳出 switch 代码块。实例 2-2 输出某年某个月的天数 【实例描述】本程序运行时,将在屏幕上输出指定年份中指定月份的天数。读者可通过此实例 进一步熟悉多分支语句 switch 的语法格式及其用法。【技术要点】一年有 12个月,其中 1、3、5、7、8、10、12月的天数为 31天;4、6、9、11 月的天数为 30 天;闰年时, 2 月份的天数为 29天,其他年份为 28 天。 判断当前年份是否为闰年,如果为闰年, 则该年份应能被 4整除, 但不能被 100 整除,或者 该年份能被 400 整除。步骤1:启动Eclipse,在Chapter2包中创建类 ShowDays,并编写如

39、下代码。package Chapter2;import java.util.Sca nner; public class ShowDays public static void main(String args) System.out.println(” 请输入年份:”);Scanner inY ear = new Sca nn er(System.i n);int year = inY ear. next In t();/ 输入年System.out.println(” 请输入月份:”);Scanner inMon th = new Sca nn er(System.i n);int mon

40、th = inMonth.nextInt();/输入月份int numDays = 0;switch (month) /以月份作为分支条件case 1:case 3:case 5:case 7:case 8: case 10:case 12:numDays = 31; /1 、3、5、7、8、10 、12 月天数为 31break;/跳出 switch 语句case 4:case 6:case 9: case 11: numDays = 30;/4、6、9、11 月天数为 30break;case 2:/对于 2 月,根据是否为闰年判断当月天数if (year % 4 = 0) &&a

41、mp; !(year % 100 = 0) | (year % 400 = 0) numDays = 29; else numDays = 28;break;System.out.println(year + " 年 " + month + " 月份 " + " 有 " + numDays + " 天 ");步骤 2:保存并运行程序,查看程序的运行结果。三、循环结构 利用循环结构可以重复执行某一段代码,直到不满足循环条件为止。循环结构主要有 for 、 while 和 do-while 三种循环语句 。1 for

42、语句for 语句通常适用于明确知道循环次数的情况,其语法格式如下:for (initialization;condition;iteration) statement; 循环的初始化( initialization ):只在循环开始前执行一次,通常在 此进行迭代变量的定义 。条件( condition )表达式:这是一个布尔类型表达式,如果其值为真,执行循环体内的语句(statement),如果为假则结束循环。迭代( iteration )表达式:通常是迭代变量的自增或自减运算表达 式,在循环体执行完毕时执行。2 while 语句3 do-while 语句while 语句通常用于重复执行次数不

43、确定的循环,其语法格式如下:while(expression)statement;expression 是一个布尔表达式; while 语句首先取得 expression 的返回值,当返回 值为true时,执行循环体中的语句statement,否则,循环结束。do-while 语句与 while 语句的区别在于第一次循环时, while 语句是先判断循环条件, 再循环, 如果条件为假,则循环体不会被执行。而 do-while 语句则是先执行循环体后判断。do-while 语句的语法格式如下:dostatement;while(expression);实例 2-3 游戏中生命力购买问题【实例描述

44、】在一场名为 Game 的游戏中, 作为玩家的你手头拥有若干个金币。 为增加生命力, 你需要购买仙女草和银河梭两件宝物。 其中仙女草每件售价 20 个金币, 可增加玩家 30个单 位的生命力;银河梭每件售价 16 个金币,能够增加玩家 20 个单位的生命力。编程求出一种最佳购买方案, 使得用你的金币购买的宝物能够最大限度地增加你的 生命力(不一定要用完所有金币) ,并输出最佳方案中每件宝物的购买数量。【技术要点】首先输入金币的数量, 然后计算出这些金币所能购买的仙女草和银河梭的最大与最 小数量; 随后构造双层嵌套的循环结构, 外层循环以仙女草的数目为循环变量, 内层循环以 银河梭的数目为循环变

45、量; 循环体中找出能够得到最大生命力的购买方案, 并记录下购买方 案中各变量值,最后输出结果。 package Chapter2;import java.util.Scanner;/定义仙女草的售价/定义银河梭的售价 /定义仙女草增加的生命力 /定义银河梭增加的生命力public class Game static final int FGV ALUE = 20; static final int GSV ALUE = 16; static final int FGLIFE = 30; static final int GSLIFE = 20;public static void main(S

46、tring args) int goldcoin = 100;/定义金币的数量int fg_num = 0, gs_num = 0;/定义仙女草与银河梭的数量int max_life = 0;/定义最大生命力值System.out.println(" 请输入金币的数量为: ");Scanner in = new Scanner(System.in);goldcoin = in.nextInt();for (int fg_loop = 0; fg_loop <= (goldcoin / FGV ALUE); fg_loop+)for (int gs_loop = 0; gs_loop <= (goldcoin / GSV ALUE); gs_loop+)if (fg_loop * FGV ALUE + gs_loop * GSV ALUE) <= goldcoin)&& (FGLIFE * fg_loop + GSLIFE *gs_loop) > max_life) 数量gs_num = gs_loop;/ 记录银河梭的数量max_life = FGLIFE * fg_loop + GSLIFE * gs_loop;System.out.println(" 购买的宝物最多能增加你 " +

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论