一:运算符
练习一: 平年闰年
package cn.tedu.basic2;
import java.util.Scanner;
public class Test1_Years {
public static void main(String[] args) {
/*
* 输入年号,判断是否是闰年。两个条件:
* 1、能被4整除,并且不能被100整除
* 2、或者能被400整除
*/
int year;
Scanner scan=new Scanner(System.in);
year=scan.nextInt();
if((year%4==0&&year%100!=0)||year%400==0) {
System.out.println("是闰年");
}else {
System.out.println("不是闰年");
}
}
}
练习二:自增练习
package cn.tedu.basic2;
public class Test2_AutoIncrement {
public static void main(String[] args) {
int i=1;
System.out.println(i++);//先赋值再运算
int j=1;
System.out.println(++j);//先运算再赋值
int b=1;
int c=b++;
int d=++b;
/*
* 原理:
* b=1;
* 由于x++是先赋值,再运算,所以输出c是没有自增过的b=1,然后b进行自增,所以此时b为2
* b=2
* 由于++X是先自增,再运算,所以此时d是已经自增过了的b=3,此时b=3
*
* */
System.out.println(c);
System.out.println(d);
}
}
练习三:两个数求最大值
package cn.tedu.basic2;
import java.util.Scanner;
public class Test3_max2 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int a=scan.nextInt();
int b=scan.nextInt();
if (a>b) {
System.out.println("最大值是"+a);
}else {
System.out.println("最大值"+b);
}
}
}
练习四:三个数求最大值
package cn.tedu.basic2;
import java.util.Scanner;
public class Test4_Max3 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int a=scan.nextInt();
int b=scan.nextInt();
int c=scan.nextInt();
if(a>b) {
if(a>c) {
System.out.println("最大值是"+a);;
}else {
System.out.println("最大值是"+c);
}
}else {
if(b>c) {
System.out.println("最大值是"+b);
}else {
System.out.println("最大值是"+c);
}
}
}
}
二:分支结构
基本概念:
顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。对于要先做判断再选择的问题就要使用分支结构。
基本写法:
- 单分支 if(条件){代码}
- 多分支 if(条件){代码}else{代码}
- 嵌套分支 if(条件){代码}else if(条件){代码}else if(条件){代码}else{代码}
练习一:商品打折
package cn.tedu.basic2;
import java.util.Scanner;
public class Test5_Discount {
public static void main(String[] args) {
// 接收用户输入的原价。满1000打9折。满2000打8折。满5000打5折。
Scanner scan=new Scanner(System.in);
double pri=scan.nextDouble();
System.out.println(discount(pri));
}
public static double discount(double pri) {
if(pri>=5000) {
pri=pri*0.5;
}else if(pri>=2000) {
pri=pri*0.8;
}else if(pri>=1000){
pri=pri*0.9;
}
return pri;
}
}
练习二:统计学院得分
package cn.tedu.basic2;
import java.util.Scanner;
public class Test6_grade {
public static void main(String[] args) {
// 90分以上 优秀
//
// 80~89 良好
//
// 70~79 中等
//
// 60~69 及格
//
// 60分以下 不及格
Scanner scan=new Scanner(System.in);
int gra=scan.nextInt();
if(gra<0||gra>100) {
System.out.println("输入错误!");
}else if(gra>=90) {
System.out.println("优秀");
}else if(gra>=80) {
System.out.println("良好");
}else if(gra>=70) {
System.out.println("中等");
}else if(gra>=60) {
System.out.println("及格");
}else {
System.out.println("不及格");
}
}
}
- switch分支结构
switch(变量或者表达式){
case 1:
case 2:
case 3:
case 4:
default:
}
练习一:数字匹配
package cn.tedu.basic2;
public class Test7_Num {
public static void main(String[] args) {
int i=3;
switch (i) {
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
case 3:
System.out.println("3");
break;
case 4:
System.out.println("4");
break;
case 5:
System.out.println("5");
break;
default:
System.out.println("错误");
break;
}
}
}
三:循环结构
for(开始条件;循环条件;更改条件){
循环体代码…
}
练习一:打印1-10
package cn.tedu.basic2;
public class Test8_Print1To10 {
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
System.out.println(i);
}
}
}
练习二:打印10-0
package cn.tedu.basic2;
public class Test9_print10to0 {public static void main(String[] args) {
for (int i = 10; i >=0 ; i--) {
System.out.println(i);
}
}
}
练习三:打印8,88,888,8888
package cn.tedu.basic2;
public class Test10_Print8to8888 {
//方法一
public static void main(String[] args) {
int a=0;
for (int i = 0; i < 4; i++) {
a=a*10+8;
System.out.println(a);
}
//方法二
for (int i = 8; i < 88888; i=i*10+8) {
System.out.println(i);
}
}
}