
接上一章
类型转换、进制、运算符
- 5、if-else语法
- 5.1 练习题
- 6、Scanner键盘获取数据
- 6、获取随机数——Math.random()
- 7、switch-case语法
- 8、for循环
- 9、while循环
- 10、do...while循环
- 11、循环练习题
- 12、嵌套循环
- 例题一:打印*正方形
- 例题二:打印*倒三角
- 例题三:打印*正三角
- 例题四:打印菱形的右边半个
- 例题五:打印菱形的上半部分
- 例题六:打印菱形的下半部分
- 例题七:打印完整的菱形
- 例题八:打印九九乘法表
- 例题九:输出100以内的所有质数
- 13、特殊关键字的使用:break、continue
- 13.1、break关键字:
- 13.2、continue关键字:
class StringTest {
public static void main(String[] args) {
//方法一:
//输出结果:检查结束
int a=80;
if(a<60||a>100){
System.out.println("血压不正常,进一步检查");
}
System.out.println("检查结束");
}
}
//方法二:
//输出结果:已成年
int age1=23;
if(age1<18){
System.out.println("未成年");
}else{
System.out.println("已成年");
}
//方法三:
//输出结果:青壮年时期
int age=23;
if(age<0){
System.out.println("数据不符合规范");
}else if(age<18){
System.out.println("青少年时期");
}else if(age<35){
System.out.println("青壮年时期");
}else if(age<60){
System.out.println("中年时期");
}else{
System.out.println("老年时期");
}
5.1 练习题
练习题1
class Test {
public static void main(String[] args) {
//编写程序,声明2个int型变量并赋值。判断两数之和,
//如果大于等于50,打印”hello world“
int i1=18;
int i2=20;
if(i1+i2>=50){
System.out.println("hello world");
}else{
System.out.println("两数之和不符合要求");
}
}
}
练习题2
class Test {
public static void main(String[] args) {
//编写程序,声明2个double型变量并赋值。判断第一个数大于10.0,
//且第2个数小于20.0,打印两数之和。否则,打印两数的乘积。
double d1=12.0;
double d2=10.0;
if(d1>10.0 && d2<20.0){
System.out.println("两数之和:"+(d1+d2));//两数之和:22.0
}else{
System.out.println("两数乘积:"+d1*d2);
}
}
}
练习题3
import java.util.Scanner;
class Test {
public static void main(String[] args) {
System.out.println("请输入狗的年龄!");
Scanner sc = new Scanner(System.in);
int dogAge = sc.nextInt();
double Age = 0;
int Age1=0;
if(dogAge<0){
System.out.println("数据不合法");
}else if(dogAge>0 && dogAge<=2){
Age=dogAge*10.5;
Age1=(int)Age;
System.out.println("小狗的年龄为:"+dogAge+" 相当于人类:"+ Age1+"岁");
}else{
Age=(dogAge-2)*4+10.5*2;
Age1=(int)Age;//强转一下,去掉double类型小数点
System.out.println("小狗的年龄为:"+dogAge+" 相当于人类:"+ Age1+"岁");
}
}
}
6、Scanner键盘获取数据
class StringTest {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
//获取int类型的数据
System.out.println("请输入int类型的数据");
int num = scan.nextInt();
System.out.println(num);
//String类型的数据
System.out.println("请输入String类型的数据");
String name = scan.next();
System.out.println(name);
}
}
//double类型 double name = scan.nextDouble(); //boolean boolean name = scan.nextBoolean();6、获取随机数——Math.random()
class StringTest {
public static void main(String[] args) {
//获取一个二位数的随机数
//[0.0,1.0) ————>[0.0,90.0)————>[10.0,100.0)
double value = Math.random()*90+10;
//[10.0,100.0)————>[10,99]
int v1=(int)value;
System.out.println("产生的随机数:"+v1);
}
}
7、switch-case语法
class StringTest {
public static void main(String[] args) {
int num = 2;
switch(num){
case 0:
System.out.println("zero");
break;
case 1:
System.out.println("one");
break;
case 2:
System.out.println("two");
break;
case 3:
System.out.println("three");
break;
default:
System.out.println("other");
}
}
//结果输出是two
}
8、for循环
语法
class StringTest {
public static void main(String[] args) {
for(int i=0;i<=5;i++){
System.out.println(i);
}
//结果:会依次从0输出到5
}
}
例题一、
class StringTest {
public static void main(String[] args) {
//例题:遍历50以内的偶数,得到所有偶数的和、偶数的个数
int sum=0;//和
int count=0;//数量
for(int i=0;i<=50;i++){
if(i%2==0){
System.out.println("偶数:"+i);
sum+=i;
count++;
}
}
System.out.println("50以内的偶数和为:"+sum+" 个数为:"+count);
//输出结果:50以内的偶数和为:650 个数为:26
}
}
例题二、
import java.util.Scanner;
class StringTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个正整数");
int m = sc.nextInt();
System.out.println("请输入第二个正整数");
int n = sc.nextInt();
//获取两个数中的较小值
int min = (m= 1;i--){
if(m%i == 0 && n%i == 0){
System.out.println("最大公约数为:" + i);
break;
}
}
}
}
例题三、
import java.util.Scanner;
class StringTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个正整数");
int m = sc.nextInt();
System.out.println("请输入第二个正整数");
int n = sc.nextInt();
//获取两个数中的较大值
int max = (m>n)? m : n;
for(int i=max;i <= m*n;i++){
if(i%m == 0 && i%n == 0){
System.out.println("最大公倍数为:" + i);
break;
}
}
}
}
9、while循环
class whiletest1 {
public static void main(String[] args) {
System.out.println("Hello World!");
//遍历100以内的所有偶数
int i = 1;
while(i<=100){
if(i % 2 == 0){
System.out.println("偶数:"+i);
}
i++;
}
System.out.println(i);//101
}
}
10、do…while循环
class whiletest1 {
public static void main(String[] args) {
int num = 1;
do{
if(num%2==0){
System.out.println("偶数:"+num);
}
num++;
}while(num<=100);
}
}
11、循环练习题
例题一:
从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,
输入为0时结束程序
import java.util.Scanner;
class whiletest1 {
public static void main(String[] args) {
int count=0;//正数
int num=0;//负数
while(true){
Scanner sc= new Scanner(System.in);
System.out.println("请输入一个整数:");
int n = sc.nextInt();
if(n>0){
//正数
count++;
}else if(n<0){
//负数
num++;
}else{
System.out.println("输出为0结束程序");
break;//结束程序
}
System.out.println("整数为:"+n);
}
System.out.println("正数个数为:"+count);
System.out.println("负数个数为:"+num);
}
}
12、嵌套循环
例题一:打印*正方形
输出结果是6*6的正方形
import java.util.Scanner;
class whiletest1 {
public static void main(String[] args) {
//输出结果是6*6的正方形*
for(int j = 1;j<=6;j++){
for(int i = 1;i<=6;i++){
System.out.print('*');
}
System.out.println();
}
}
}
例题二:打印*倒三角
输出倒三角
class whiletest1 {
public static void main(String[] args) {
//输出结果是倒三角
for(int j = 1;j<=6;j++){
for(int i = 6;i>=j;i--){
System.out.print('*');
}
System.out.println();
}
}
}
例题三:打印*正三角
输出正三角
class whiletest2 {
public static void main(String[] args) {
//输出结果是正三角
for(int m = 1;m<=6;m++){
for(int n = 1;n<=m;n++){
System.out.print('*');
}
System.out.println();
}
}
}
例题四:打印菱形的右边半个
输出菱形的右边半个
class whiletest1 {
public static void main(String[] args) {
//输出结果是倒三角
for(int m = 1;m<=6;m++){
for(int n = 1;n<=m;n++){
System.out.print('*');
}
System.out.println();
}
for(int j = 1;j<=5;j++){
for(int i = 5;i>=j;i--){
System.out.print('*');
}
System.out.println();
}
}
}
例题五:打印菱形的上半部分
输出菱形的上半部分
在这里插入代码片class whiletest1 {
public static void main(String[] args) {
//上半部分
for(int i = 0; i < 5;i++){//5层
//输出"_"
for(int j = 0;j < 4-i;j++){
System.out.print(" ");
}
//输出"* "
for(int k = 0;k< i+1;k++){
System.out.print("* ");
}
System.out.println();
}
}
}
例题六:打印菱形的下半部分
输出菱形的下半部分
for(int i = 0; i < 4;i++){
for(int j = 0;j
例题七:打印完整的菱形
class whiletest1 {
public static void main(String[] args) {
//上半部分
for(int i = 0; i < 5;i++){//5层
//输出"_"
for(int j = 0;j < 4-i;j++){
System.out.print(" ");
}
//输出"* "
for(int k = 0;k< i+1;k++){
System.out.print("* ");
}
System.out.println();
}
System.out.println("*********************");
//下半部分
for(int i = 0; i < 4;i++){
for(int j = 0;j
例题八:打印九九乘法表
效果图:
class test1{
public static void main(String[] args){
System.out.println("九九乘法表!");
for(int i = 1;i<=9;i++){
for(int j = 1;j<=i;j++){
System.out.print(i+"*"+j+"="+(i*j)+" ");
}
System.out.println("");
}
}
}
例题九:输出100以内的所有质数
100以内的所有质数的输出
质数:素数,只能被1和它本身整除的自然数。
从2开始,到这个数-1结束为止,都不能被这个数本身整除
最小的质数是:2
class test1{
public static void main(String[] args){
System.out.println("100以内的质数!");
boolean flag = true;//表示i是否被j除尽,一旦除尽,修改其值
for(int i = 2;i <= 100;i++){//遍历100以内的自然数
for(int j = 2;j<=i-1;j++){//j:被i去除
if(i%j==0){//i能被j除尽 说明不是质数
flag=false;
break;
}
}
if(flag == true){
System.out.print(i+" ");
}
flag=true;//置为true,让后面的质数继续去遍历
}
}
}
13、特殊关键字的使用:break、continue
break 和 continue关键字的使用
适用范围 循环中使用的作用
break: switch-case 结束当前循环
循环结构中
continue: 循环结构中 结束当此循环
相同点: 关键字后面不能声明执行语句
13.1、break关键字:
class test1{
public static void main(String[] args){
System.out.println("break用法");
for(int i = 1;i <= 10;i++){
if(i % 4 == 0){
//直接暂停整个for循环
break;//输出结果:1 2 3
}
System.out.print(i+" ");
}
}
}
13.2、continue关键字:
class test1{
public static void main(String[] args){
System.out.println("continue用法");
for(int i = 1;i <= 10;i++){
if(i % 4 == 0){
//只是暂停了4和8这一次的循环
continue;//输出结果:1 2 3 5 6 7 9 10
}
System.out.print(i+" ");
}
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)