java数组if循环_流程控制语句 if if..else while for do...while 数组

1.简述Scanner类及Random类的功能和使用方式?

Scanner类功能:引用数据类型,获取用户键盘录入的数据

方式:先在最顶部导包importjava.util.Scanner;

数据类型 变量名= new数据类型();

变量名.方法名();

举例

创建对象 Scanner sc=newScanner(System.in);

调用方法:int i=sc.nextInt();接收录入的数字

Strings=sc.next();接收录入的字符串

获取数字

System.out.println("请输入一个数字");int n =sc.nextInt();

System.out.println("n的值为" +n);

获取字符串

System.out.println("请输入一个字符串");

String str=sc.next();

System.out.println("str的值为" +str);

Random类功能:产生多种数据类型的随机数

顶部导包importjava.util.Random

举例 创建

Random 变量名= newRandom();

产生0-100的随机数整数给iint i = r.nextInt(100);

得到0.0-1.0范围的随机小数 赋值给d变量double d =r.nextDouble();

System.out.println(i);

System.out.println(d);2.if语句的格式有几种?注意事项是什么?分别在什么时候使用?三种 :()里放判断条件 执行语句放在{}if(判断条件){执行语句}if(){}else{}:如果满足某种条件,就进行某种处理,否则进行另一种处理if(){}else if(){}else if(){}...else{}:多种条件判断,进行多种不同处理

第一种:if(条件表达式){

执行语句

}

注意:1:if(条件表达式)其后没有分号。

一般来说,有"{}"有没有";",有";"就没有"{}"

2:if语句所控制的语句如果是一条语句,我们可以不写大括号;

如果控制的是两条以上的语句,必须加大括号。

if语句的控制体没有加大括号是其后跟的一条语句。

建议:永远加上大括号。避免不必要的错误。

第二种:if(条件表达式){

执行语句1;

}else{

执行语句2;

}

注意:1:执行流程 判断条件表达式,为true,执行语句1,若为false ,执行语句22:if可单用,有else必有if

第三种:if(条件表达式){

执行语句1;

}else if(条件表达式){

执行语句2;

}

.......else{

执行语句n;

}1:else可以省略,但是不建议。

(1)它是第三种格式的组成部分。

(2)你有可能没有判断完所有的情况,我们就可以使用else来完成特殊情况。2:执行流程

格式很长,但它整体只是一条语句。

不断的判断,只要有满足条件的条件表达式,就执行该判断处控制的语句体,执行完后。语

句结束。

当都不满足时候,执行else。3:if后面必须有条件表达式。

else后面没有条件表达式。4:if语句的嵌套

if语句里面的语句体还是if语句。3.for循环、while循环、do-while循环的格式是什么?简述执行流程及注意事项?

for循环:for(初始化表达式; 循环条件; 操作表达式){

执行语句

………

}

for关键字后面()中包括三部分:初始化表达式、循环条件和操作表达式,它们之间“;”分

隔{}中的执行语句为循环体。

while循环:while(循环条件){

执行语句

………

}

当循环条件为true时,循环体就执行。执行完毕时会继续判断循环条件,如条件仍为true则

继续执行,直到循环条件为false时,整个循环过程才结束。do-while:do{

执行语句

………

}while(循环条件);

循环体会无条件执行一次,然后再根据循环条件来决定是否继续执行。5.简述break、continue及循环标号的作用?

break结束当前循环

contiune 跳出本次循环

在任何内循环内可以通过查找标号的方式来实现结束和挑传操作

6.编写程序,生成5个1至10之间的随机整数,并打印结果到控制台。

import java.util.Random;

public class RandomDemo{

public static void main (String args[]){

for (int a = 0 ; a < 5 ; a++){

System.out.println(new Random().nextInt(10)+1);

}

}

}

8.编写程序,打印1到100之内的整数,但数字中包含7的要跳过

代码1:

import java.util.*;

//打印1到100之内的整数,但数字中包含7的要跳过

public class NumberDemo{

public static void main (String[] args){

for (int a = 1 ; a <= 100 ; a++){

if(!String.valueOf(a).contains("7")){

System.out.print(a+" ");

}

}

}

}

代码2:

//打印1到100之内的整数,但数字中包含7的要跳过

public class User {

public static void main(String[] args) {

int ge, shi;

for (int a = 1; a <= 100; a++) {

ge = a % 10;

shi = a / 10 % 10;

if (a < 10) {

if (!(a == 7)) {

System.out.print(a+" ");

}

} else {

if (!(ge == 7 || shi == 7)) {

System.out.print(a+" ");

}

}

}

}

}

代码3:

public class User {

public static void main(String[] args) {

for (int a = 1 ; a <= 100; a++){

if(a % 10 == 7 || a / 10 % 10 == 7){

continue;

}

System.out.println(a);

}

}

}

10.我国最高山峰是珠穆朗玛峰,8848米。现在我有一张足够大的纸,它的厚度是0.01

米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度。

public static void main(String[] args) {

double paperThick = 0.01;

int count = 0;

while (true){

if (paperThick < 8848.0){

count++;

paperThick = paperThick * 2.0;

System.out.println("第"+count+"次折"+paperThick+"M");

}else{

break;

}

}

System.out.println("一共能折"+count+"次");

}

11.看程序写结果:请自己独立分析,先不要编译运行。

第一题

int x = 1,y = 1;

if(x++==2 & ++y==2)

{

x =7;

}

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

//x=2 y=2

---------------------------------------------------

第二题

int x = 1,y = 1;

if(x++==2 && ++y==2)

{

x =7;

}

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

//x=2 y = 1

---------------------------------------------------

第三题

int x = 1,y = 1;

if(x++==1 | ++y==1)

{

x =7;

}

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

//x = 7 y = 2

---------------------------------------------------

第四题

int x = 1,y = 1;

if(x++==1 || ++y==1)

{

x =7;

}

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

//x = 7 y = 1

---------------------------------------------------

第五题//b

boolean b = true;

if(b==false)

System.out.println("a");

else if(b)

System.out.println("b");//true

else if(!b)

System.out.println("c");

else

System.out.println("d");

---------------------------------------------------

12.需求:

* 键盘录入x的值,计算出y的并输出。

* x>=3    y = 2 * x + 1;

* -1

* x<=-1    y = 2 * x - 1;

代码:

public static void main(String[] args) {

@SuppressWarnings("resource")

int x = new Scanner(System.in).nextInt();

System.out.println("y = " + (x >= 3 ? ((2 * x) + 1) : x > -1 && x < 3 ? 2 * x : x <= -1 ? ((2 * x) - 1) : ""));

}

13.键盘录入三个整数,并将三个数据中的最大值打印在控制台。

代码:

public static void main(String[] args) {

@SuppressWarnings("resource")

int x = new Scanner(System.in).nextInt();

@SuppressWarnings("resource")

int y = new Scanner(System.in).nextInt();

@SuppressWarnings("resource")

int z = new Scanner(System.in).nextInt();

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

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值