案例:计算球的面积
publicstatic void main(String[] args) { Scanner scan=new Scanner(System.in); System.out.println("请输入球的半径");//行打印 int r=scan.nextInt(); double v=4f/3*Math.PI*r*r*r; System.out.printf("%6.2f",v);//格式化打印 }
涉及知识点:
(1)常量
常量指的是在程序运行期间不变的数据,常量分为直接常量和符号常量。
直接常量:
3,4f 3.14 “Hello,World”
1.2e-6(1.2*10-6)
为什么1.2*10-6 在代码中用1.2e-6?
因为(1.2*10-6)带有格式而源代码是纯文本文件 不能带有格式
进制 一种记数方法
2进制 和10进制 电脑不是不用十进制 而是用不了
0123 (八进制) 1*82
0x123 (16进制)
符号常量:符号化的常量,也就是给常量取个名字。
为什么使用符号常量? final(最终的,最后的)
(1)便于维护(Math.PI=)
(2)符号常量相比于直接常量,能提供更丰富的信息,怎强程序 可读性。
直接常量是死定的 不变的 , 符号常量
进制:一种计数的方法,即所谓的“逢X进1,借1当X”
基:某种进制所用的符号的个数,比如十进制 使用0—9十个符号,二进制使用的是 0 1两个符号 八进制 使用0-7 八个符号 十六进制 使用了0-9 和A-F十六个符号。
权:一个符号所表示的值的大小除了和符号本身有关,还与其所处位置有关。把某个位置的1所表示的值的大小即为该位的权。
111=1*102+1*101+1*100 //权 102 101100
1234=1*103+2*102+3*101+4*100 //权 102 101100
(123)
(1)X进制-十进制
按权展开
(2)十进制 到 十六进制
除基取余、倒序排列
数据类型:
生活中的数据本来就有类型,只不过我们没有在意或者去深入研究。那么计算机语言就是告诉计算机如何去解决现实问题,当然需要对等的概念去描述数据。
常用的数据类型有:
基本数据类型:byte shout int longflout double char(单字符)
Booleam(布尔型)
引用数据类型:String(字符串)
不同的编辑器(环境下) 数据类型所代表的字节数不同
数据类型有啥作用?
(1)决定了每一个数据存储时所需要的字节数(内存空间)。
(2)决定了数据所能执行的运算。
变量:
变量的本质是 内存单元、内存空间(可以看成容器) 可以存储数据,也可以将存储的数据读出来。
int x;的含义:告诉编译器,需要申请4个字节的内存空间,以后这个单元(4字节)就叫做x了。
int x=4的含义是:申请了一个4字节的内存单元同时把数据 4存储了进去;
内存单元有两个属性: 值 和 地址
x=x+1;的含义:
先申请一个内存单元x 然后把这个内存单元x读取 出来放到cpu中运算(重新赋值)运算后再存储到原来的内存单元中。
运算符:
(1)算术运算符
+ - * / ++ --
++: 自增运算
b=a++; //等价于b=a a+1
b=++a; //等价于a+1 b=a
总结:++在前就先加后用,++在后则先用后加。
++、一直都可以用赋值运算和+、-来替换,所及即使 没有++也是可以的,但是它们可以使表达更加简洁。
除法有两种:一般除法和整除,如果除数和被
除数都是整型,则 执行的是整除,否则就执行一般除法。
求余:可用于判断奇偶、判断因子、控制数据的周期变化 S=(S+1)%60。
(2)关系运算符
> >= < <= == !=
(3)逻辑运算符
&&与 或|| 非!
(4)赋值运算符
=把一个数值存入内存单元(只有变量才是内存单元)
所以赋值运算的左边一定是变量而不能是其他任何东西(why)
特别注意此处有坑!!!
= 和 == 的混用。
如何避免?判断相等时,尽量把常量或者表达式放在左边 (一般 习惯是放在右边) 一种小的规范 避免错误
判断 if(a+b==c) //应该这样 ==是关系运算符适用于判断
if(a+b=c) // =是赋值运算符
复合赋值运算符 +=、-=.....。
a+=2; 等价于a=a+2;
(5)条件运算符
C=a>b?a:b; 可以取代简单拿到if结构,简洁。
1.3 程序设计方法
程序:为了实现某个功能的步骤的描述。
程序设计:规划步骤并描述出来。
编织者的要求:
(1)懂业务(2)掌握一种描述语言
计算机程序与我们一般意义上的程序本质都是一样的,不同的是描述语言和执行者不同。
程序员的要求:
(1)懂业务(2)掌握一种计算机语言
重点是提升业务能力,也就是分析问题、解决问题的能力,说的更具体点,就是站在计算机的角度去分析问题(计算机思维)。而不是什么计算机语言,语言用多了自然就会,不需要特别的学习。
三步法:
(1)理清解决问题的思路(要求换位思考,站在计算 机的角度)
(2)用自然语言描述思路。
(3)翻译成计算机语言。
案例:计算一个三位数的各位数之和。
(1)提示用户输入一个三位数
(2)接收用户输入
(3)计算百位 b=x/100;(取整)//除以100
(4)计算十位 //((用这个数-百位*100)/10)
(n/10%10) (n%100/10)
(5)计算个位(n%10)
(6)三位求和
2 选择结构
选择结构都有选项 和判别条件
格式字符:
一个行打印 println
格式打印 printf(“%.f(数据类型)”,)
转移字符
扩展知识:
阿斯科码值是ASCII码的音译 我国用的是国标码 ASCII不适用中国文字
介绍如下:ASCII码全称是美国(国家)信息交换标准(代)码,一种使用7个或8个二进制位进行编码的方案,最多可以给256个字符(包括字母、数字、标点符号、控制字符及其他号)分配(或指定)数值,用于在不同计算机硬件和软件系统中实现数据传输标准化,在大多数的小型机和全部的个人计算机都使用此码。
1,为什么会有选择结构?
因为计算机输出的语句不一定是你所需要的
你需要把你需要的选择出来(判断)