栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

javaSE基础(面向对象之前)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

javaSE基础(面向对象之前)

java 发展
java 1.8 ----java 8
    在 dos 窗口里
    javac 编译Java代码
    java 运行Java代码
    jdk和jre
     jre是Java所需要的运行环境
     jdk是Java所需要的开发环境
    jvm虚拟机
    打开命令提示窗口(dos) 快捷键win+r  输入cmd
     
操作说明
切换盘符E: 盘符名称加冒号 回车
进入文件夹cdcd 加上 文件夹的名字 回车
返回上一级文件夹/退出文件夹cd..
直接返回到磁盘根目录cd
查看当前文件夹dir
清屏cls
退出exit
进入多个目录cd 加上 文件夹文件夹
tab循环访问里面的文件
java语言特点
1.简单 
2.与平台无关性 跨平台
3.面向对象:封装 继承 多态
4.交互式特性,多线程的机制
5.健壮性又称鲁棒性
6.分布式
7.动态内存管理机智 垃圾回收机制
8.安全性 
注释
1.单行注释   //注释内容
2.多行注释   
3.文档注释   
关键字
关键字:就是被java语言赋予了特定含义的单词 例如 public int double char ...
常量
在运行过程中,其值不可以发生改变的量
常量类型说明举例
字符串常量用双引号括起来的内容"HelloWorld","程序员"
整数常量不带小数的数字666,-88
小数常量带小数的数字13.14 , -5.21
字符常量用单引号括起来的内容'A; , '0', '我''
布尔常量布尔值,表示真假只有两个值:true,false
空常量一个特殊的值,空值值是:null
基本数据类型
基本数据类型 数值型 整数 : byte short int long
                  浮点数 : float double 
            字符型 : char 
            布尔型 : boolean
基本数据类型

数值型 整数型 byte short int long

浮点型 float double

字符型 char

布尔型 boolean

类型关键字长度(位)长度(字节)表示范围
整数类型byte81-128~127 -2^7~2^7-1
short162-32768~32767 -2^15~2^15-1
int 默认324-2147483648~2147483647 -2^31~2^31-1
long648-2^63~2^63-1
浮点类型float324-3.403e38~3.403e38
double 默认648-1.798e308~1.798e308
字符类型char162表示一个字符 'a' '0' '中'
布尔类型boolean81取值只有true false

整数中的int 浮点数中的double 是默认的数据类型

变量

格式

数据类型 变量名 = 变量值; int a = 10;

标识符
命名规则
1.由大小写字母 下划线 数字,$符号组成
2.开头可以是大小写字母 下划线 $(数字不能作为开头),除了$和_任何符号都不能使用
3.标识符是没有长度限制的
4.标识符不能是关键字
5.见名知其义 String name;
6.区分大小写
​
1.小驼峰命名规则      userNameAgePhone  首字母小写 变量 方法
2.大驼峰命名规则      UserNameAgePhone  首字母大写 定义类
​
常量的命名规则  一般全是大写 再加上下滑线_
String USER_NAME="";
idea快捷键
格式化代码 Ctrl+alt+L
重命名 shift + F6
public class 和 class
如果一个类声明的时候使用了public class 类名必须跟文件名一致
class 类名 与文件名可以不一致 编译也能通过
数据类型转换
1.自动转换
自动转换(隐式转换)
  1.代码不需要特殊的处理 自动完成
  2.规则 数据范围从小到大
2.强制转换
  强制转换(显示转换)
 .特点 代码不能自动转换完成 需要进行特殊的数据处理
  2.格式 数据范围小的类型 数据小的变量名=(范围小的类型)原本   数据范围大的
 注意事项:
 1.强制类型转换一般不推荐使用,因为会损失精度,数据溢出这种情   况
 2.byte/short/char 这三个数据类型在参与运算的时候 都会先被    提升为int类型 然后在计算
 3.byte/short/char 这三种数据类型都能参与运算 例如         +..char -->ASCII值
 4.布尔 boolean 类型不能发生数据类型转换
 
ASCII值
//A B C .....Z 65 66 67...90
//a b c .... z  97 98 99....122
//0 1 2 3... 48开始57

运算符
运算符:进行特定操作的符号 + - * / 
四则运算:+ - * /    %取模(取余数)
符号作用说明
+
-
*
/
%取余获取的是两个数据做除法的余数

对于一个整数来说 除法用的是整除 整数除以整数结果仍然是整数 只看商不看余数 只有对于整数的除法来说 取模运算才有余数的意义

注意:

一旦运算中有不同的数据类型 那么结果会是范围比较大的数据类型

+:符号
1.对于数值来说就是简单的加法 a + b ;
2.对于char 类型的数据 会被提升为int类型 然后在进行计算 char-int 参照ASCII表
3.String字符串(首字母大写,并且不是关键字)+代表字符串连接
    任何数据类型在和字符串进行连接的时候 结果都会变成字符串
自增自减运算符
自增运算符:++
自减运算符:--
基本含义:让一个变量自身涨1 或者让一个变量自身降1
使用格式:可以放在变量的后面 或者 变量的前面
使用方式:      
   1.单独使用:不和其他运算混合在一起 自己独立成为一个步骤      2.混合使用:和其他操作混合在一起    
  区别:      
   1.在单独使用的时候 前++和后++ 没有任何区别      
   2.在混合使用的时候          
     1.++在前 先自身加1 在参与运算          
     2.++在后 先参与运算 在自身加1
   3.常量不能使用自增自减   //30++;错误的写法
赋值运算
符号作用说明
=赋值a=10,将10赋值给变量a
+=加后赋值a+=b,将a+b的值给a
-=减后赋值a-=b,将a-b的值给a
*=乘后赋值a * =b,将a * b的值给a
/=除后赋值a/=b,将a/b的商给a
%=取余后赋值a%=b,将a/b的余数给a
关系运算符(比较运算符)
符号说明
==a==b,判断a和b的值是否相等,成立为true,不成立为false
!=a!=b,判断a和b的值是否不相等,成立为true,不成立为false
>a>b,判断a是否大于b,成立为true,不成立为false
>=a>=b,判断啊是否大于等于b,成立为true,不成立为false
<a
<=a<=b,判断a是否小于等于b,成立为true,不成立为false
注意事项:
1.比较运算符结果一定是一个布尔值,成立 true,不成立 false
2.如果需要进行多次判断 , 不能连着写  数学中 1 

逻辑运算符
符号作用说明
&逻辑与a&b,a和b都是true,结果为true,否则为false
|逻辑或a|b,a和b都是false,结果为false,否则为true
^逻辑异或a^b,a和b结果不同为true,相同为false
!逻辑非!a,结果和a的结果正好相反
短路逻辑运算符
符号作用说明
&&短路与作用和&相同,但是有短路效果
||短路或作用和|相同,但是有短路效果
注意事项:
    逻辑与&,无论左边真假,右边都要执行
    短路与&&,如果左边为真,右边执行;如果左边为假,右边不执行.
    逻辑或|,无论左边真假,右边都要执行.
    短路或||,如果左边为假,右边执行;如果左边为真,右边不执行
  最常用的逻辑运算符:&&,||,!
  
  短路与 && 短路或 || 具有短路的效果 如果可以根据左边判断得   到最终的结果
  那么右边的代码将不执行,能节省一定的性能
​
  注意事项
     1.逻辑运算符只能用于boolean值
     2.短路与 && 短路或 || 左右各需要一个boolean值 但是取  反只需一个boolean值即可
     3.短路与&& 短路或|| 如果有多个运算 可以连续写
       两个条件的 A&&B
       多个条件的 A && B && C && D
     4.数学 11&&X<4
三元运算符(三目)

语法:

数据变量 变量名 = 条件判断? 表达式一:表达式二
    1.条件判断 是否成立 
      如果为true 表达式一
      如果为false 表达式二
    

char 取值范围 0-65535

流程控制语句
1.if 单分支语句
2.if else 双分支语句
3.if else if else 多分支语句
4.swtich case 多分支语句
循环语句
1.for 循环
2.while 循环
3.do while 循环
跳转语句 
break
continue
if 单分支语句
语法格式 
    if(条件表达式){
        执行的代码
    }
    条件判断表达式 返回值必须是true 或 false (boolean)
if else 双分支语句
语法格式 
    if(条件表达式){
         执行的代码1
    }else {
         执行的代码2
    }
    条件判断表达式 返回值必须是true 或 false (boolean)
    执行流程
    条件表达式 结果 为true 执行代码1的语句
              结果 为false 执行代码2的语句

回顾
1.变量 (三部分)
数据类型 变量名 = 变量值
数据类型 变量名;
变量名 = 变量值;
​
2.遵循驼峰命名
  不使用汉字 尽量使用英文字母 不能是关键字 见名知意
  下划线(_) $ 不能是数字开头
  区分大小写
  
3.基本数据类型
byte  short int long float double char boolean
引用数据类型 String
char 0-65535  0-2^16-1
默认的整数类型 int 
默认的浮点类型 double
long a = 100l;
float f = 3.4f;
​
byte short char 参与运算会将数据类型提升为int 在参与运算符
byte a = 5 ;
short b = 10;
int c = a + b;
4.运算符
  + - * / %(取模)
  赋值运算
  = += -= *= /= %= 
  ++ -- 自增自减运算符
  单独使用的时候 ++在前在后没有区别
  ++在前 先自身加一 在参与运算  ++在后 先参与运算在自身加一
  关系运算符
  最终返回一个boolean值 
  > < >= <= == !=
  逻辑运算符
  与&  或|  非! 
  短路运算符
  && 两边都为true 结果才为true 
  || 只要有一个为true 结果就为true
  !  取反
  三元运算符
  数据类型 变量名 = 条件表达式?表达式一:表达式二;
  条件表达式为true  取值表达式一 反之 取值表达式二
  
  数据类型转换
  自动转换 小----->大
  强制转换 大----->小  int a = 5; byte b; b=(byte)a;
  boolean 类型不能发生转换
  
  5.条件分支语句
  if(条件表达式){}
  if(条件表达式){}else{}
条件分支语句
代码执行顺序
1.顺序语句
2.分支语句 就是选择语句
3.循环语句 反复重复执行某一段代码
​
if(){}
if(){}else{}
​
控制台录入 Scanner
1.导包 import java.util.Scanner;(会自动导入)
2.创建对象 Scanner sc = new Scanner(System.in);
  将鼠标放到Scanner上面 会有提示 import class 导包 import ja...
3.使用
  数值型  sc.next数据类型(); sc.nextInt() sc.nextDouble()
  字符串 sc.next();
  没有 char 类型的输入
  
4.多条件分支语句
格式:
 if(关系表达式1){
 语句体1;
 } else if (关系表达式2){
 语句体2;
 }
 ...
 else {
 语句体n+1;
 }
1.判断关系表达式1 如果为true 语句体1 如果为false 
判断关系表达式2 true 语句体2 ... 如果都不符合的情况下走最后的else
​
5.Switch语句
 switch(表达式){
 case 值1:
 语句体1;
 break;
 case 值2:
 语句体2;
 break;
 ...
 default:
 语句体n+1;
 }
 注意事项
 1.case 穿透 如果没有break 会继续执行 直到遇到一个break程序才终止
 2.case 后面跟的是一个具体的值 不能是变量 也不能是多个值 也不能是范围
 3.case 后面的值 不能重复
 4.switch 可以接收六种变量 byte short int char String(java7) 枚举(java5)
循环
重复的做某一件事情
格式:
for(初始化语句;条件判断语句;条件控制语句){
    //循环体语句;
}
执行流程
    for(int i=0;i<5;i++){
        //循环体语句;
    }
1.初始化i为0
2.i<5 的值 返回的是true 走循环体语句
3.i++ i的值会增加1 i=5
    2.i<5 返回的值是false 则循环结束 跳出循环体
While循环
语法格式
   while(条件判断表达式){
    //循环体;
       控制语句(计数器);
  }
​
执行流程
    int b = 0;
    while(b<5){
        System.out.println(b);
        b++;
    }
1.判断b的值是否小于5 为true就执行一次循环体 b++
2.循环第一步 直到b的值不小于5 为false的话 才跳出循环
while 在不知道要循环多少次的情况下 推荐使用while
for 在明确使用多少次的情况下
3.死循环
    while的死循环
    while(true){}
    for的死循环
    for(;;){}

Do While循环
1.语法格式
    do {
        //循环体;
        条件控制语句;
    }while(判断条件);
​
三种循环的区别
    for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行)
    do...while循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断)
    如果条件判断重来没有满足过的时候,那么 for 和 while会执行0次 但是 do...while 会至少执行一次
    for循环变量定义在小括号里面 只有循环内部才可以使用 但是 while 和 do...while 在循环外定义控制条件 所以循环结束后还可以接着使用
        
2.死循环格式:
for(;;){}
while(true){}
do{}while(true);
while死循环格式是最常用的
    命令提示窗口中Ctrl+c可以结束死循环
    
3.break 和 continue 的区别
    continue:跳过某次循环体内容的执行,继续下一次的执行
    break:终止循环体内容的执行,也就是说结束当前的整个循环
​
4.循环嵌套
        for(int i=0;i<10;i++){
         for(int j=0;j<10;j++){
             
         }   
        }
每次执行外层循环 内层循环会执行结束为止
随机数Random
1.导包 
    import java.util.Random;
2.创建对象
    Random r = new Random();
3.获取随机数
    int a = r.nextInt(10)+1
    获取数据的范围[0,10)包含0 但不包含10

数组
数组的概念:是一种容器,可以同时存储多个数据
数组的特点:
    1.数组是一种引用数据类型
    2.数组中存放的值类型必须统一
    3.数组长度在运行期间不可以改变
    
数组的定义格式:
1.动态初始化(指定长度)
    数据类型[] 数组名 = new 数据类型[数组长度]
    int[] arr = new int[5];
    int arr[] = new int[5];
2.静态初始化(指定数组里面的内容)
    //标准格式
    数据类型[] 数组名 = new 数据类型[]{数据1,数据2,数据3...} 
    //省略的格式
    数据类型[] 数组名 = {数据1,数据2,数据3...}
    int[] arr =new int[]{1,2,3,4};
    int[] arr = {1,2,3,4};
​
左侧数据类型:也就是数组中保存的数据类型 全都是统一的数据类型
        左侧中括号:代表是一个数组
        左侧数组名称:数组的名字
        右侧new:创建数组
        右侧的数据类型:必须和左边保持一致
        右侧的中括号:数组中可以保存多少个数据 是int数字
​
注意事项:
//省略的格式不允许分开写
int [] arr4;
//arr4 = {1,2,3,4}
​
数组访问方式
    数组名[索引];
​
动态初始化:
使用动态初始化数组的时候 其中的元素会有默认值 规则如下:
        int 默认值 0 
        double 默认值 0.0
        String 默认值 null
        char 默认值 'u000'
        boolean 默认值 false
    
常见的异常
    索引越界,访问了数组中不存在的索引对应元素,造成索引越界问题
    索引越界异常 ArrayIndexOutOfBoundsException 
    空指针异常,访问的数组已经不再指向堆内存的数据,造成空指针异常
    空指针异常   NullPointerException 
            
遍历数组
    int[] arr = {1,2,3,4,5,6};
    for(int i=0;i<=5;i++){
        arr[i];
    }
​
新型for循环 增强for循环
        格式 for(元素的数据类型 变量名:数组名){}
        //每次循环的数值 就是数值中每个元素的值
}
​
 数组排序:
        1.冒泡排序
        2.Arrays.sort(数组名)
        默认是升序排序
        3.数组扩容 Arrays.copyOf(数组,新数组长度)
        4,数组填充 Arrays.fill(数组名,填充的内容)
        5.将数组转换为字符串输出toString()
            
Arrays
1.Arrays.sort(数组名) //排序
2.Arrays.fill(数组名,填充的内容) //填充
3.Arrays.copyOf(数组名,新的数组长度) //扩容
4.Arrays.toString(数组名) //数组转字符串
5.Arrays.binarySearch(数组名,获取下标的元素值)  //二分查找法 使用前一定要排序
6.数组名.clone(); //数组克隆
7.Arrays.equals(数组1,数组2);//判断两个数组是否相等 返回一个boolean值 true相等 false不相等
二维数组/锯齿数组
1.定义方式
数据类型[][] 数组名 = new 数据类型[长度][长度];
int[][] num = new int[5][4];
2.第二种
    数据类型[][] 数组名 = new 数据类型[长度][];
    int[][] num = new int[5][];
3.第三种
    数据类型[][] 数组名 = {{元素1,元素2,元素3},{元素1,元素2,元素3},{元素1,元素2,元素3}}

方法(method)
方法定义:
方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集
注意:
方法必须先创建才可以使用,该过程称为定义方法
方法创建后并不是直接运行的,需要手动使用后才执行,该过程称为方法调用
方法定义格式
    修饰符 返回值类型 方法名称(){
    //方法体
}
注意事项:
1.方法定义的先后顺序无所谓
2.方法必须挨着的,不能再一个方法的内部定义另外一个方法
3.方法定义好之后,不会自动执行,必须调用才可以执行
 
带参数的方法的定义
    单个参数定义格式
    修饰符 返回值类型 方法名称(数据类型 参数){
    //方法体
}
    多个参数定义格式
    修饰符 返回值类型 方法名称(数据类型 参数,数据类型 参数){
    //方法体
}     
注意:
如果有多个参数的情况下,每个参数使用逗号进行隔开
参数前必须要加数据类型
​
带返回值的方法定义
修饰符 返回值类型 方法名称 (数据类型 参数){
    //方法体
    return 返回的数据;
}
public int add(){
    return 只能是int类型;
}

方法(method)
1.定义方法的格式
    修饰符 返回值类型 方法名(参数类型 参数){//方法体}
    public static void getSum(){//方法体}
2.带参数的方法
3.带返回值的方法
4.return:两个作用 第一个停止当前的方法,第二个将后面的返回值返回给调用者
5.注意事项
    1.方法定义应当在类当中,并且方法里面不能再嵌套方法
    2.方法定义前后顺序是无所谓的
    3.方法定义好之后不会自己执行,如果希望方法执行,需要调用 单独调用 打印调用 赋值调用
    4.如果方法有返回值的话 必须加上return 后面再加上返回值 如果方法没有返回值 就用void
    5.return 返回的数据类型 必须和方法返回的类型相对应上
    6.void 没有返回值的方法 不能写return+值 只能写return自己
    7.void 没有返回值的方法 return 在方法中最后一行可以省略
    8.一个方法中可以有多个return语句,但是必须保证同时只有一个会被执行 并且return不能连着写
方法的重载(overload)
6.方法的重载(overload):多个方法的名称一样,参数列表是不一样的
    好处:只需要记住一个方法名就可以,就可以实现类似的多个功能
​
    方法重载与下列因素有关
     多个方法具有相同的方法名
    1.参数的个数不同
    2.参数的数据类型不同
    3.参数的多类型顺序不同
    4.多个方法在同一个类中
        
    方法重载与下列因素没有关系
    1.与参数的名称无关
    2.与方法的返回值类型无关(不能通过返回值来判断两个方法是否相互构成重载)
7.方法参数传递
对于基本数据类型的参数,形式参数的改变,不影响实际参数的值
对于引用数据类型的参数,形式参数的改变,影响实际参数的值;
    

注:考试时间90分钟,请将答案填写到答题卡上,试卷上不允许作答

    

一、选择题:(共16题、每题2分、共32分)

1.对于switch/case语句以下说法正确的有。()

A、default语句是可选的,但是如果出现default则必须位于所有的case后面

B、case子句后面的值必须是常量,且不可重复

C、switch后面的表达式的值如果是数值型,则必须是可精确匹配的整数值,如intlong,而不能是浮点数

D、case后面的break是必选的,不能省略break

2.设int x=1,float y=2,则表达式 x / y的值是:()
A.0 B.1 C.2 D.以上都不是

3. 在JAVA中,下列哪些说法是正确的(  )  

A.java源文件的扩展名为.java

B.写好的java源程序可以直接运行

C.编写的源程序必须先编译后才能运行

程序员可以读懂扩展名为.class的文件

4.下列标识符哪个是合法的(  )

A.class

B.$abc

C.1234

D._name

5.下面哪些赋值语句是正确的?()

A. long test = 012;

B. float f = -412;

C. int other = (int) true;

D. byte b = 128;

6.下列代码运行的结果是(  )

public static void main(String[] args) {

int x = 4;

int y = 5;

if(x++>4 & ++y>5) {

x++;

}

System.out.println("x=" + x + ",y=" + y);

}

A. x=4,y=5

B. x=4,y=6

C. x=5,y=6

D. x=6,y=6

7.尝试运行下面的代码会发生什么?( )  

public class Test {

public static void main(String[] args) {

boolean m = true;

if (m = false) {

System.out.println("true");

} else {

System.out.println("false");

}

}}

A.输出字符串”true”

B.输出字符串”false”

C.编译时错误

D.运行时错误

8.和下面代码能完成相同的选项是( )

class Demo {

public static void main(String[] args) {

int i = 1;

int sum = 0;

while (i <= 100) {

if (i % 2 == 0) {

sum = sum + i;}

i++;}

System.out.println(sum);}}

A. for (int x =1; x<=100;x++){ sum=sum+x;}//求1到100的和

B. for (int x =0; x<=100;x+=2){ sum=sum+x;}//求1到100之间偶数的和

C. for (int x =1; x<=100;x+=2){ sum=sum+x;}//求1到100之间奇数的和

D.上述全对

9.编译并运行以下代码将发生什么? (  )

public static void main(String[] args){

char digit = 'a';

for (int i = 0; i < 10; i++){

switch (digit){

case 'x' :

{

int j = 0;

System.out.println(j);}

default :

{

int j = 100;

System.out.println(j);}}}

int i = j;

System.out.println(i);

}

A.输出11次100

B.输出10次100,然后抛出运行期异常

C.编译错误,因为变量i不能在main()方法中被声明2次

D.编译错误,因为变量j不能在main()方法中被声明2次

E.以上都不对

10.System.out.println("5" + 2);的输出结果应该是(  )。

   A 52           B 7             C 2              D 5

11.下面的方法,当输入为2的时候返回值是多少?( )

    public static int getValue(int i) {

        int result = 0;

        switch (i) {

        case 1:

            result = result + i;

        case 2:

            result = result + i * 2;

        case 3:

            result = result + i * 3;

        }

        return result;

    }

A.0                    B.2                    C.4                     D.10

12.请分析下面的代码的结果

int  num = 90;

System.out.println( num ++ );

运行结果:(                )

A.90                   B.91                    C.89                   D.92

13.请分析下面的代码的结果()

double a = 89.5;

int b = (int)a + 10;

System.out.println(b);

A.89.5                  B.99                   C.100                  D.90

14.下面命令中,可以用来正确执行HelloWorld案例的是()

A、java HelloWorld

B、java HelloWorld.java

C、javac HelloWorld

D、javac HelloWorld.java

15.

public class test {

public static void main(String args[]) {

int i=0, j=2;

do {

i=++i;

j--;

} while(j>0);

System.out.println(i);

}

}

A、0

B、1

C、2

D、3

16、请选择以下代码运行结果?()

class xyz {

public static void main(String args[]) {

int i,j,k;

for (i = 0; i < 3; i++) {

for(j=1; j < 4; j++) {

for(k=2; k<5; k++) {

if((i == j) && (j==k))

System.out.println(i);

}

}

}

}

}

A、0   

B、1

C、2

D、3

  • 填空题(共5题,每空1分,共21分)
  1. Java基本数据类型有___种,分别是___,___,____,_____,___,____,___,___。
  2. 请问switch表达式可以是什么数据类型? __,    _,___,

3.java语言的特点是什么___,___,___(3)

4.循环语句包括__________ ,_________ , ________。

5.Java控制语句包括_________,__________,_________

  • 简答题(共3题,每空4分,共12分)

1. 请简单描述一下break和continue的区别

2.简述&&和&运算符的区别。

  

 3.. 请写出for循环的语法结构并概括与while

  • 编程题(3题,共35分)
  1. 韩嫣参加计算机编程大赛

如果获得第一名,将参加麻省理工大学组织的1个月夏令营

如果获得第二名,将奖励惠普笔记本电脑一部

如果获得第三名,将奖励移动硬盘一个

否则,不给任何奖励

  1. 求1-100之间的数据和

3、编写程序,判断一个三位数是不是水仙花数。水仙花数指的是个三位数,其各位数字立方和等于该数本身。 例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/888917.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号