java入门学习笔记(四)——结构化程序设计、数据的输入与输出、分支语句、循环语句

系统类即java.lang.System,是一个Object类的子类。
其最主要的特点是使用前不需要用new语句进行初始化,因为在系统启动时,已自动对系统类进行初始化,分配了相应的内存区。

一、数据的输入与输出

系统类java.lang.System中,预先定义了以下三个流对象。

  1. System.in
  2. System.out
  3. Sysstem.err

1、标准的输入——System.in.read()

用来读取字符,若没有读到字符,返回值为-1。

2、Scanner类

java.util.Scanner类,这是一个用于扫描输入数据的实用类,可以结合使用正则表达式和从输入流中检索特定类型的数据。

除能使用正则表达式外,Scanner类还可以任意地对字符串和基本类型的数据进行分析,借助Scanner,可以针对任何要处理的文本内容,编写自定义的语法分析器。

练习1代码

.nextFloat()
.nextInt()
.nextLine()
.hasNextFloat()
.hasNextInt()

package try_a_package;

import java.util.Scanner;

public class learn_3 {
    
    
	public static void main(String[] args)
	{
    
    
		float a;
		int b;
		String c;
		Scanner rd=new Scanner(System.in);
		
		a=rd.nextFloat();
		System.out.println(rd.hasNextFloat());
		b=rd.nextInt();
		System.out.println(rd.hasNextInt());
		c=rd.nextLine();
		System.out.println(c);
	}
}

运行结果

在这里插入图片描述

练习2代码

.next()

package try_a_package;

import java.util.Scanner;

public class learn_4 {
    
    
	public static void main(String args[])
	{
    
    
		String s1,s2,s3;
		Scanner rd=new Scanner(System.in);
		s1=rd.next();
		s2=rd.next();
		s3=rd.next();
		System.out.println(s1+s2+s3);
	}
}

运行结果

在这里插入图片描述

练习三代码

如果需要输入整数,需要加“gbk”。
Scanner rd=new Scanner(System.in,“gbc”)

package try_a_package;

import java.util.Scanner;

public class learn_4_1 {
    
    
	public static void main(String args[])
	{
    
    
		Scanner rd=new Scanner(System.in,"gbk");
		String S1;
		S1=rd.nextLine();
		System.out.println(S1);
	}
}

运行结果

在这里插入图片描述

二、分支语句

简单分支不再赘述

switch练习

package try_a_package;

import java.util.Scanner;

public class learn_4_1 {
    
    
	public static void main(String args[])
	{
    
    
		Scanner rd=new Scanner(System.in);
		int m,s;
		double c,t;
		System.out.println("输入产品的数量:");
		m=rd.nextInt();
		s=m/500;
		switch(s)
		{
    
    
		case 0:
			c=0.01;
			break;
		case 1:
			c=0.03;
			break;
		case 2:
		case 3:
			c=0.04;
			break;
		default:
			c=0.05;
		}
		t=20*m*(1-c);
		System.out.println("购买产品的花销是:"+t);
	}
}

运行结果

在这里插入图片描述

三、循环语句

练习1 打印一棵树

package try_a_package;

import java.util.Scanner;

public class learn_4_1 {
    
    
	public static void main(String args[])
	{
    
    
		int n,i,j,p=40;
		Scanner rd=new Scanner(System.in);
		System.out.println("输入n:");
		n=rd.nextInt();
		System.out.println("输出的图形如下:");
		for(i=0;i<n;i++)
		{
    
    
			for(j=0;j<p-i;j++)
			{
    
    
				System.out.print(" ");
			}
			for(j=1;j<=2*i-1;++j)
			{
    
    
				System.out.print("*");
			}
			System.out.print("\n");
		}
	}
}

运行结果

在这里插入图片描述

练习2 判断素数

package try_a_package;

import java.util.Scanner;

public class learn_4_1 {
    
    
	public static void main(String args[])
	{
    
    
		Scanner rd=new Scanner(System.in);
		int n,i,t;
		System.out.println("输入一个正整数:");
		n=rd.nextInt();
		t=(int)Math.sqrt(n);
		for(i=2;i<=t;++i)
		{
    
    
			if(n%i==0)
			{
    
    
				break;
			}
		}
		if(i!=t+1)
		{
    
    
			System.out.println(n+"不是素数");
		}
		else
		{
    
    
			System.out.println(n+"是素数");
		}
	}
}

运行结果

在这里插入图片描述

在这里插入图片描述

练习3.continue语句——打印100以内的素数

package try_a_package;

import java.util.Scanner;

public class learn_4_1 {
    
    
	public static void main(String args[])
	{
    
    
		Scanner rd=new Scanner(System.in);
		int n,i,t;
		System.out.println("100以内的素数如下:");
		
		AllPrime:
		
		for(n=2;n<100;++n)
		{
    
    
			
			t=(int)Math.sqrt(n);
			for(i=2;i<=t;++i)
			{
    
    
				if(n%i==0)
				{
    
    
					
					continue AllPrime;
				}
			}
			if(i>t)
			{
    
    
				System.out.print(n+" ");
			}
		}
		
		System.out.println("");
	}
}

运行结果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_41563270/article/details/108719287
今日推荐