1. if...else 语句
if (boolean表达式){ 代码块} 为true执行{ } 中语句
几种形式:
if () {}
if () {}else{ }
if () {} else if() {}
2.switch.....case 开关语句
break: 结束当前语句(循环)
switch (key) {
case value:
break;
default:
break;
}*/
//break: 是结束switch的关键
3. 循环
循环结构----重复执行某一代码快
1. for 循环
2. while循环
3. do...while循环
for循环结构
for(1.循环变量初始化; 2 循环条件 ; 4.循环自增/自减){
//循环体
1-2-3-4-2-3-4-...
}while循环 相当于分解式的for循环,相当于知道条件, 多用于不确定循环次数的
do{
}while() 无论条件都会执行一次
控制循环次数:
break: 结束离最近的一层循环
continue:结束一次循环, 跳过本次循环,继续执行下一次
4.随机数Random
Random random = new Random(); 随机一个数
int num = random.nextInt();
System.out.println(num);
//nextInt(n); 范围 0 -- n-1 和取余类似
//对于区间的范围 n 为 nextInt(大范围-小范围+1)+小范围 [n, m] nextInt(m-n+1) + n
//20---60的随机数
int s = random.nextInt(60-20+1)+20;
循环嵌套:
外层控制行数, 内层控制列
练习
打印图行
正方形
三角形
1.循环输出以下效果
for(int i=1;i<=20;i++) {
System.out.println(2*i+"*"+5*i+"="+(2*i*5*i));
}
//1.2
int a =2,b1=5;
while(b1<=100) {
a+=2;
b1+=5;
if (b1==100) {
System.out.println(a+"*"+b1+"="+a*b1);
}
System.out.println();
}
使用while循环打印10*10行的图形
int f = 1;
while(n<=100) {
if (f==1) {
System.out.print("0");
}else {
System.out.print("1");
}
if (n%10==0) {
f=-f;
System.out.println();
}
n++;
}
2.计算2000年1月1日到2019年6月17日相距多少天
int day=0;
int count=17;
int month=5;
int year = 2019;
for(int i= 2000;i<2019;i++) {
if (i%4==0&&i%100!=0 || i%400==0) {
day+=366;
}else {
day+=365;
}
}//累加月份值
switch (month) {
case 5:
count+=31;
case 4:
count+=30;
case 3:
count+=31;
case 2:
if (year%4==0 && year%100!=0 || year%400==0) {
count+=29;
}
count+=28;
case 1:
count+=31;
}
System.out.println(count+day);*/
//3.质数的相关练习, 只能被1和它自身整除的数叫质数, 例如: 3 5 7 11
//3.1控制台输入一个整数, 判断这个数是不是质数
System.out.println("请输入一个数:");
int num =sc.nextInt();
int b =0;
for (int i = 1; i <= num; i++) {
if (num % i==0) {
b++;
}
}
if (b==2) {
System.out.println("质数");
}else {
System.out.println("不是质数");
}
/* //3.2
for (int i = 1; i < args.length; i++) {
}*/
/* //4. 输入任意一个整数(小于10位), 求它一共多少位.
System.out.println("请输入一个整数");
int z = sc.nextInt();
count = 0;
while(z>=1) {
count+=1;
z=z/10;
}
System.out.println(count);*/
//6.控制台输入两个整数,计算并输出这两个整数的最大公约数和最小公倍数.
// 3 6 ---3
/* int m = 3,n=6;
int temp;
if (m>n) {
temp=n;
}else {
temp=m;
}
for (int i = temp; i>0; i--) {
if (n%i==0 && m%i==0) {
System.out.println("最大公约数"+i);
break;
}
}
//最大公倍数
//获取最大值
if (m>n) {
temp=m;
}else {
temp = n;
}
for (int i = temp; i < m*n; i++) {
if (i%m==0&&i%n==0) {
System.out.println("最小公倍数"+i);
break;
}
}
//7.百钱买百鸡, 有100元钱, 要去买100只公鸡, 公鸡5元一只, 母鸡3元一只,小鸡1元3只, 问共公, 母,小鸡各买多少只?
for (int i = 0; i <20 ; i++) {
for (int j = 0; j < 33; j++) {
for (int k = 0; k < 100; k++) {
if (i+j+k==100 && 2*i+5*j+(k/3)==100&& k%3!=0) {
System.out.println(i+" "+j+" "+k);
}
}
}
}*/
}
}