Java语法基础02基本程序设计
下面通过一些题目来说明本章的内容,最下面是一些基本概念:
2.1(将摄氏溫度转换为华氏溫度)编写程序,从控制台读入double 型的摄氏温度,然后将其转换为华氏温度,并且显示结果。转换公式如下所示: 华氏溢温度=(9/5)* 摄氏温度+32
程序如下:
import java.util.Scanner;
class Demo1{
public static void main(String[] args){
//从键盘输入一个摄氏温度
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a degree in Celsius:");
//将输入的摄氏温度存入celsius中
double celsius = scanner.nextDouble();
//计算华氏温度;将celsius放到整数9的前面,两者相乘为double型
double fahrenheit = celsius*9/5+32;
System.out.println(celsius+"Celsius is"+fahrenheit+"Fahrenheit");
}
}
- 用 Scanner类中的 nextDouble()方法来从键盘读取一个 double 数值。也可以使用该方法读取 byte、short、int、 long以及 float 类型的数值。
2.2 (计算圓柱体的体积)编写程序,读入圆柱体的半径和高,并使用下列公式计算圆柱的体积:
面积 =半径*半径 P
体积 =面积高
程序如下:
import java.util.*;
class Home1{
public static void main(String[] args){
//定义一个final常量P
final double P = 3.1415926;
System.out.print("Enter the radius and length of a cylinder:");
Scanner scanner = new Scanner(System.in);
//从键盘输入一个double型半径r
double r = scanner.nextDouble();
//输入高heigh
double heigh = scanner.nextDouble();
//计算底面积
double area = r*r*P;
//计算体积
double volume = area*heigh;
System.out.println("The area is "+area);
System.out.println("The volume is "+volume);
}
}
- 一个变量的值在程序执行过程中可能会发生变化,但是命名常量(named
constant)或简称常量,则表示从不改变的永久数据。在2.2中,P是一个常量。如果频繁使用它,但又不想重复地输入 3.1415926,
代替的方式就是声明一个常量P。(此话来自Java语言程序设计.基础篇)
2.6 (求一个整数的各个位数之和)编写程序,读取一个在 0 和1000 之间的整数,并将该整数的各位数字相加。例如:整数是 932, 各位数字之和为14。
程序如下:
import java.util.*;
class Home2{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a number between 0 and 1000:");
//将输入的数字存入num中
int num = scanner.nextInt();
//判断num的数值是否符合题目要求
if(num<=0||num>=1000){
System.out.println("Enter number is Error");
return;
}
//将数的个位数字取出存入a
int a = num%10;
//将数字的前两位存入num;后面以此类推
num /= 10;
int b = num%10;
num /= 10;
int c =num%10;
//计算各个数字的和
int sum = a+b+c;
System.out.println("The sum of the digits is "+sum);
}
}
-
操作符%, 被称为求余或者取模操作符,可以求得除法的余数。左边的操作数是被除数,右边的操作数是除数。因此,7/3 的结果是1, 3/7
的结果是 3, 12/4 的结果是 0, 26/8 的结果是 2, 20/13的结果是 7。•2.19 (几何:三角形的面积)编写程序,提示用户输人三角形的三个点(x1,y1)、 (x2,y2) 和 (x3,y3),然后显示它的面积。计算三角形面积的公式是:
s=(边1+边2+边3)/2
面积=sqrt(s(s-边1)(s-边2)(s-边3))
程序如下:
import java.util.*;
class Home4{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.print("Enter three points for a triangle:");
double x1 = scanner.nextDouble();
double y1 = scanner.nextDouble();
double x2 = scanner.nextDouble();
double y2 = scanner.nextDouble();
double x3 = scanner.nextDouble();
double y3 = scanner.nextDouble();
//判断三条边是否能够成一个三角形
if(b1+b2<=b3||b1+b3<=b2||b2+b3<=b1){
System.out.println("Enter error!");
return;
}
//计算三条边长度
double b1 = Math.sqrt(Math.pow((x1-x2),2)+Math.pow((y1-y2),2));
double b2 = Math.sqrt(Math.pow((x2-x3),2)+Math.pow((y2-y3),2));
double b3 = Math.sqrt(Math.pow((x1-x3),2)+Math.pow((y1-y3),2));
//计算三角形面积
double s = (b1+b2+b3)/2;
double area = Math.sqrt(s*(s-b1)*(s-b2)*(s-b3));
System.out.println(area);
}
}
程序如下:
import java.util.*;
class Home3{
public static void main(String[] args){
System.out.print("Enter your money:");
Scanner scanner = new Scanner(System.in);
//将输入的钱数存入money中
double money = scanner.nextDouble();
//将钱数转换为美分
int penny = (int)(money*100);
//计算有多少个美元
int dollar = penny/100;
//将剩余美分存入spenny
int spenny = penny%100;
//计算有多少2角5分钱
int quarter = spenny/25;
//将剩余美分存入spenny
spenny %=25;
//计算有多少1角
int dime = spenny/10;
//将剩余美分存入spenny
spenny %= 10;
//计算有多少5美分
int nickel = spenny/5;
//将剩余美分存入spenny,现在的spenny的值就为,有多少1美分个数
spenny %= 5;
System.out.println("dollar:"+dollar+"\t"+"quarter:"+quarter+"\t"+"dime:"+dime+"\t"+"nickel:"+nickel+"\t"+"penny:"+spenny+"\n"+spenny);
}
}
- Java常量和变量
1.常量表示程序中固定不变化的值。比如:整数1,2,3,小数3.14,false,true等。
2.变量表示内存中的一个存储区域,该区域用来不断的存放同一类型的常量数据,并可以 重复使用这个区域。并且这个区域有自己的名称(变量名)和类型(数据类型)。
- Java的数据类型
- Java中数据类型的转换
隐式类型转换:当在存储整数数据时,Java中所有的整数默认都是int类型的。所以在将-128~127之间 的数据存储在byte类型空间中时,JVM会把这个int类型的数据自动转换成byte类型,然后 存放在byte空间中。short同理
强制类型转换:容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度的 降低或溢出,使用时要格外注意,强制转换格式:
(数据类型)(被转数据);
如若本章内容或程序有错,请大家指出来,谢谢了