int x = 4;
int y = (x++)+(++x)+(X*10);
System.out.println(x); //6
System.out.println(y);//70
y:x++,++x=6; 6*10=60, 60加上前面2个x的值,分别为4和6.等于4+6+60=70;
//调用类
/* 构造方法,构造方法重复使用。比如action里面有的, 可以再建一个构造方法jj,调用action,
并且可以再jj里添加东西,再建一个构造方法kk,又在方法里添加东西,kk里面有jj和action,
而kk里有都jj里没有,可以灵活在其他类里调用这几个方法。*/
Airplane a;
Airplane a1;
BigAirplane big;
BigAirplane big1;
Hero h;
Bullet bu;
Bullet bu1;
Bee b;
Bee b1;
//Sky sky;
void action(){
Sky sky = new Sky();
h = new Hero();
a = new Airplane();
a1 = new Airplane();
big = new BigAirplane();
big1 = new BigAirplane();
bu = new Bullet(2, 3);
bu1 = new Bullet(2,3);
b = new Bee();
b1 = new Bee();
System.out.println("天空的宽"+sky.width+"天空的高"+sky.height+"天空的速度"+sky.speed);
System.out.println("英雄机的宽"+h.width+"英雄机的高"+h.height+"英雄机的速度"+h.speed);
System.out.println("小敌机的宽"+a.width+"小敌机的高"+a.height+"小敌机的速度"+a.speed);
System.out.println("大敌机的宽"+big.width+"大敌机的高"+big.height+"大敌机的速度"+big.speed);
System.out.println("蜜蜂的宽"+b.width+"蜜蜂的高"+b.height+"蜜蜂的速度"+b.ySpeed);
}
void jj(){
action();
System.out.println("测试11111");
}
void kk(int aaa){
jj();
System.out.println("测试2222");
}
public static void main(String[] args){
World world = new World();
world.kk(5);
Bee sh = new Bee();
sh.sss();
}
}
—————— // 单独调用构造方法里的一个值
/**天空*/
public class Sky {
/*
* 高度height,宽度width,横坐标x
* 竖坐标y,下落速度speed,切换图片y1
*/
int height;
int width;
int x;
int y;
int y1;
int speed;
Sky(){
height = 700;
width = 400;
x = 0;
y = 1;
y1 = -1;
speed = 1;
}
Sky(int a){
this.x= a;
System.out.println(this.x);
}
void step(){
Sky a = new Sky(); // 初始化Sky
int aa = a.height; // 调取Sky中需要的值
System.out.println(aa); //输出
System.out.println("天空下滑了"+speed);
}
public static void main(String[] args){
Sky sky = new Sky();
sky.step();
}
}
———————————————————————————————————
1.用户在控制台输入 3 个数值,需要找出这 3 个数值中的最小值,要求使用 if 语句来实现。系统交互信息如图所示:
// package lianxi;
import java.util.Scanner;
// public class Demo1 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入第一个整数");
int num1 = scan.nextInt();
System.out.println("请输入第二个整数");
int num2 = scan.nextInt();
System.out.println("请输入第三个整数");
int num3 = scan.nextInt();
if (num1 <= num2 && num1 <= num3) {
System.out.println("最小数是:" + num1);
}
if (num2 <= num1 && num2 <= num3) {
System.out.println("最小数是:" + num2);
}
if (num3 <= num1 && num3 <= num2) {
System.out.println("最小数是" + num3);
}
}
}
2// 正三角形 表达式
public static void main(String[] args){
// 1.定义行数 6行
int lie = 6;
//2.让行数累加并小于6
for(int a = 1;a<=6;a++){
//3.正三角形条件 用输出空白 替代
for(int b = lie-1;b>=a;b--){
System.out.print(" ");
}
//4.计算*数量并输出
for(int c = 1; c<=a*2-1;c++){
System.out.print("*");
}
System.out.println(); // 增加*换行条件
}
}
}}
// 直角三角形表达式
public static void main(String[] args){
//1. 定义列数 10列
int lie = 10;
//2.定义一组数,让列依次累加
for (int a = 0;a<=lie;a++){
//3.计算*的数量并输出
for(int b = 1; b<=a+1;b++){
System.out.print("*");
}
System.out.println();// 增加*换行条件
}
}
}
//倒输出三角形
public static void main(String[] args){
for(int a = 1;a<=9;a++){
for(int b=a;9-b>=0;b++){
//for(int b= 9;b>=a;b--)
System.out.print(a+"*"+b +"="+a*b+" ");
}
System.out.println();
}}
// 用户输入高度 显示菱形
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("菱形的高:");
int height=scan.nextInt();
int b=(height*2-1)+8; //+8是中间菱形到边框的距离。8个为两边,一边4个空格
int a=b/2;//a=21/2=10
for(int i=1;i<=height+1;i++){ // 外层,+1是包括 最顶层的*
for(int j=1;j<=b;j++){ //外层一次,内层走所有次
if(i==1){ // 输出b
System.out.print("*");
}else if(j==1 || (j>=2+a && j<=b-a-1) || j==b){ //满足中间条件输出*,
System.out.print("*");
}else{//不满足中间或者两边条件输出空格" ";
System.out.print(" ");
}
}
a--;//a--=9, 初始为10 ,a=21/2=10(int为整型) a=2循环结束
System.out.println();
}
a=a+2;//a--后最终值为2,故2+2=4
//System.out.println(a);
for(int i=1;i<=height;i++){ //下半部分,同上
for(int j=1;j<=b;j++){
if(i==height){
System.out.print("*");
}else if(j==1 || (j>=2+a && j<=b-a-1) || j==b){
System.out.print("*");
}else{
System.out.print(" ");
}
}
a++; //a初始为2,+1=3。。。。。
System.out.println();
}}}
不可变高度菱形:
public static void main(String[] args){
for(int a = 1;a<=21;a++){
System.out.print("*");
}
System.out.println();
for(int i=1;i<=7;i++){
System.out.print("* ");
for(int j=1;j<=7-i;j++){
System.out.print(" ");
}
for(int k=1;k<=2*i-1;k++){
System.out.print("*");
} //System.out.print(" *");
for(int j=1;j<=7-i;j++){
System.out.print(" ");
}
System.out.print(" *");
System.out.println();
}
for(int a=6;a>=1;a--){
System.out.print("* ");
for(int b=6;b>=a;b-- ){
System.out.print(" ");
}
for(int c=1;c<=2*a-1;c++){
System.out.print("*");
}//System.out.print(" *");
for(int j=7-a;j>=1;j--){
System.out.print(" ");
}
System.out.print(" *");
System.out.println();
}
for(int a = 1;a<=21;a++){
System.out.print("*");
}
}
}
3算术运算代码:
import java.io.IOException;
import java.util.Scanner;
public class Demo6 {
public static void main(String[] args) throws IOException {
Scanner scan=new Scanner(System.in);
System.out.println("请输入第一个整数:");
int num1=scan.nextInt();
System.out.println("请输入第二个整数:");
int num2=scan.nextInt();
System.out.println("请输入运算符(+,-,*,/,%):");
char opt=(char)System.in.read();
int result=0; //保存运行的结果
switch(opt){
case '+':
result = num1+num2;
System.out.println(num1+"+"+num2+"="+result);
break;
case'-':
result=num1-num2;
System.out.println(num1+"-"+num2+"="+result);
break;
case'*':
result=num1*num2;
System.out.println(num1+"*"+num2+"="+result);
break;
case'/':
if(num2!=0){ //除数不能为0
result=num1/num2;
System.out.println(num1+"/"+num2+"="+result);
}else{
System.out.println("除数不能为0");
}
break;
case'%':
result=num1%num2;
System.out.println(num1+"%"+num2+"="+result);
break;
default:
System.out.println("运算符输入错误!!!");
}
}
}
4计算面积和周长:
import java.util.Scanner;
public class Demo7 {
// switch练习
// 输入1, 计算矩形面积和周长,长和宽由用户输入
//输入2,计算圆的面积和周长,半价由用户输入
//输入其他 ,错误提示
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("清输入要选择的图形(1 矩形 2圆):");
int opt=sc.nextInt();
switch(opt){
case 1:
System.out.println("请输入矩形的长");
int length =sc.nextInt();
System.out.println("请输入矩形的款:");
int width=sc.nextInt();
int area=length*width;
System.out.println("矩形的面积:"+area);
int perimeter=2*(length+width);
System.out.println("矩形的周长:"+perimeter);
break;
case 2:
System.out.println("请输入圆的半径:");
int r = sc.nextInt();
double PI=3.14; //π
double area2 = PI*r*r;
System.out.println("圆的半径:"+area2);
double permeter2=2*PI*r;
System.out.println("圆的周长:"+permeter2);
break;
default :
System.out.println("输入错误");
}
}
}
5// 分别求出1-100的奇数和偶数和 while 方法。
int a = 1; // 偶数
int sum = 0;
int b = 0;// 奇数
int sum1 = 0;
while (a <= 100) {
a++;
if (a % 2 == 0) {
sum = a + sum; // 偶数的和
}
}
System.out.println("偶数的和:"+sum);
while (b <=100) {
b++;
if (b % 2 == 1) {
sum1 = sum1 + b; // 奇数的和
}
}
System.out.println("奇数的和:"+sum1 );
}
}
6// 分别求出1-100之间的奇数和,偶数和,总和为多少。
public static void main(String[] args){
int sum=0,sum1=0;
for(int a=1;a<=100;a++){
if(a%2==0){
sum=sum+a; //偶数和
}else{
sum1=sum1+a; // 奇数和
}
}
System.out.println("偶数和为:"+sum);
System.out.println("奇数和为:"+sum1);
System.out.print("奇偶数总为:");
System.out.println(sum+sum1);
}}
7//从控制台输入任意一个整数,求出该整数的所有约数:全代码
package day1; //名称
import java.util.Scanner;
public class Demo9 { // 名称
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
//从控制台输入任意一个整数,求出该整数的所有约数,即可以整除该整数的数值
//(如:10可以被1,2,5,10整除,这些数是10的约数),并逐一在控制台输出。
//1.创建Scanner对象
//2.定义一个变量n,用来接收用户输入的整数
//3.求出1-n之间的每一个整数
//4.对1-n之间的每一个整数,进行筛选(n%i==0) i就是约数
System.out.println("请输入一个整数:");
int n=scan.nextInt();
int a=0;
while (a<=n){
a++;
if(n%a==0){
System.out.println("余数:"+a);
}
}
}}
8//输出1-100的整数
public static void main(String[] args){
for(int a=1;a<=100;a++){
System.out.println(a);
}}}
//倒着输出1-100的整数
public static void main(String[] args){
for (int a=100;a>=1;a--){
System.out.println(a);
}}
}
9// 求出公园1000-2015年之间的所有闰年 和非闰年
//闰年:改年份能被4整除并且不能被 100整除,或者能被400整除
//闰年条件 (i%4==0&&i%100!=0)||i%400==0
public static void main(String[] args){
for(int i=1000;i<=2015;i++){
if((i%4==0&&i%100!=0)||i%400==0){
System.out.println("闰年:"+i);
}else{
System.out.println("不是闰年:"+i);
}
}
}}
10//从控制台输入任意一个整数n,求出该整数n之间的所有奇数
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
System.out.println("请输入一个整数");
int num=scan.nextInt();
System.out.println("奇数有:");
for(int a=1;a<=num;a++){ // 求出num的总数
if(a%2!=0){ // 奇数条件
System.out.println(a);
}
}
}}
11//用户输入一个整数num,判断num以内值的奇偶数。
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
System.out.println("请输入一个整数");
int num=scan.nextInt();
for(int i=1;i<=num;i++){
if(i%2!=0){
System.out.println("奇数:"+i);
}else{
System.out.println("偶数:"+i);
}
// System.out.println("奇数:"+i);
}
}
}
12//求出100-999以内所有满足“水仙花数”的整数
//注:水仙花数,所谓“水仙花数”是指一个三位数,
//例如:153是一个”水仙花数“因为
//153=1的三次方+5的三次方+3的三次方。
public static void main(String[] srgs){
int a,b,c;
for(int i=100;i<=999;i++){
//对每一个整数,求出百位数,十位数,个位数
a=i/100;
b=i/10%10;
c=i%10;
//判断是否符合水仙花数
if(i==a*a*a+b*b*b+c*c*c){
System.out.println("水仙花数:"+i);
}
}
}}
13//求出1+1/2+1/3+1/4+…+1/100的值
public static void main(String[] args){
double num=0; // 求和定义值
for(double i=1;i<=100;i++){ //定义分母值
num=num+1.0/i; //求和 1/2是double,double是浮点数所以1.0
System.out.println(num);
}
System.out.println("和为:"+num);
}
}
14//计算出1+1/3+1/5+…+1/99的和
public static void main(String[] args){
//分析; 1-99都是分母的奇数相加
//定义一个数,筛选出奇数 当做分母,
// 求和 sum=sum+1.0/a;
double sum=0;
for(double a=1;a<=99;a++){ //定义分母 然后筛选出奇数
if(a%2!=0){
sum=sum+1.0/a;
System.out.println(sum);
}
}
System.out.println("和为:"+sum);
}
}
15//求两个整数的最大公约数,由用户输入2个正整数,求出这两个整数的最大公约数 并输出;
/* 注;公约数: 若果一个数c既是数a的约数,又是数b的约数,那么c叫做a与b的公约数。
最大公约数:两个数的公约数中最大的一个,叫做这两个数的最大公约数。
例如;求30与24的最大公约数
30的约数有;1.2.3.5.6.10.15.30
24的约数有;1.2.3.4.6.8.12.24
其中约数中最大的一个是6,所以30和24的最大公约数是6
*/
//分析;
//1 创建Scanner对象
Scanner scan=new Scanner(System.in);
//2 定义两个变量num1和num2,用来接收用户输入的整数
System.out.println("请输入第一个整数");
int num1=scan.nextInt();
System.out.println("请输入第二个整数");
int num2=scan.nextInt();
//3 求出其中较小的整数的值 min ,比如 12,36, 12就是12和36中最大的公约数,最大公约数在1-min之间
int min=num1<=num2 ? num1:num2;
//4 编写for循环,控制循环次数的变量i,i的取值范围1-min
int result=0; //定义一个数 使 i++ 不无限循环下去。
for(int i=1;i<=min;i++){
//5 求出num1和num2之间所有的公约数
if(num1%i==0&&num2%i==0){
result=i;
//6 输出最大的公约数
}
}
System.out.println(num1+","+num2+"的最大公约数是:"+result);
}
}
16// 求出10000-90000之间所有的回文数。
// 注:回文数,个位与万位相同,十位于千位相同,比如 12321
public static void main(String[] args){
// 分析:
// 1 定义变量num1(万位数),num2(千位数),
// num3(十位数),num4(个位数);
int num1,num2,num3,num4;
//2 求出10000-90000之间每一个整数
for(int i=10000;i<=90000;i++){
// 3 求出一个整数的万位数,千位数,十位数,个位数
num1=i/10000; //(万位)
num4=i%10; //(个位)
num2=i%10000/1000; //(千位)
num3=i%100/10; //(十位)
// 4 求出回文数
if(num1==num4 && num2==num3){
System.out.println("回文数:"+i);
}
}
}
}
17//思考题: 千位 十位 百位 个位 取值 为什么这么写
public static void main(String[] args){
int i=12345;
int c=i/10000; //(万位数)
int d=i%10; //(个位)
int e=i%10000/1000; //(千位)
∵12345%10000=2345;
∴12345/1000=1; 取整,小数点后面的直接省略。
int f=i%100/10; // (十位)
∵12345%100=45;
∴45/10=4;//小数点后面直接省略
int g=i%1000/100;
System.out.println("万位数"+c);//1
System.out.println("个位"+d);//5
System.out.println("千位"+e);//2
System.out.println("百位"+g);//3
System.out.println("十位"+f);//4
}
}
18//求出程序有效精准度范围内(1000000000)的圆周率π的值,并在界面上输出
//注:圆周率π的计算公式为:π/4=1-1/3+1/5-1/7+1/9-1/11......
//规律:分子都是1,分母都是奇数,奇数项是正数,偶数项是负数
public static void main(String[] args){
int flag=-1; //数学技巧,使得结果1正1负进行
double sum=0;
//分析:
//1 求出1-1000000000中所有的整数
for(int i=1;i<=1000000000;i++){
//2 从1-10000000000过滤所有的奇数,作为分母
if(i%2!=0){
//3 求出每一个分数
double num=1.0/i; //1.0/i,i会自动类型转换,有int类型自动的转换为double类型,
//1.0/i的结果也是double类型
//4 奇数项为正数,偶数项为负数。
flag= flag*(-1);
//5 累加求和:sum=sum+分数
sum=sum+num*flag;
}}
//6 求出圆周率π的值
double pi= sum*4; //pi代表π
System.out.println("圆周率π是:"+pi);
}}
20 //1 break练习;计算从r=1到r等于10的圆面积,知道面积大于100为止
public static void main(String[] args){
double area;
double pi=3.14;
for( int r=1;r<=10;r++){
//圆面积: π*r*r
area=pi*r*r;
if(area>=100){ //结束条件
break;
}
System.out.println("圆面积:"+area);
}
}
21 // 2.continue练习;输出1-30之间小于11并且大于19的数
public static void main(String[] args){
for(int a=1;a<=30;a++){
if(a>10&&a<20){
continue;
}
System.out.println(a);
}
}
}
22 //让用户输入一个整数,输出小于等于这个数 的所有奇数
// 需定义一个Scanner;
public static void main(String[] args){
System.out.println("请输入一个整数");
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int sum = 0;
int sum1 = 0;
while(num<0){
System.out.println("重新输入");
num = scan.nextInt();
}
for(int i=0;i<=num;i++){
if(i%2==0){
continue;
}
sum+=i;
System.out.println("奇数:"+i);
}
System.out.println("奇数和:"+sum);
}
}
23 //判断用户输入的一个整数是否为质数(质数是指只有1和它本身两个约数的数)
//思路:要判断整数num,让num除以2-num-1之间的的每一个整数,如果num能
// 被整除,num就不是质数,反之num不能被整除,num就是质数
//方法一:
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
System.out.println("请输入一个整数");
int num=scan.nextInt();
for(int i=2;i<=num-1;i++){
if(num%i==0){
System.out.println(num+"不是质数");
break; // 不是质数,直接跳转
}else{
System.out.println(num+"是质数");
break; // 是质数 直接跳转
}
}
}
}
24//判断用户输入的一个整数是否为质数(质数是指只有1和它本身两个约数的数)
//方法二:
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
System.out.println("请输入一个整数");
int num=scan.nextInt();
//定义一个flag,如果flag为true,num就是质数,反之
//如果flag为false,num就不是质数
boolean flag=true; //默认num是质数
for(int i=2;i<=num-1;i++){ //i定义为2~num-1之间的的每一个整数
if(num%i==0){ //num除以num之间的每一个整数i,num能被整除则
flag=false; // 将flag定义为 false 退出for循环
break;
}
}
if(flag){
System.out.println(num+"是质数");
}else{
System.out.println(num+"不是质数");
}
}
}
25 //猜数字游戏。 用户录入一个大于1的正整数,然后有系统随机抽取一个从1到此证书范围内
//的数值作为需要猜测的数字,然后提示用户猜测此数值。用户录入某数值后,
//系统判断您是否猜测正确:如果录入的数值比答案数值大,则输出“大了”。
//并提示用户继续猜:如果录入的数值比答案数值小,则输出“小了;。
//并提示用户继续猜,知道录入的数值等于答案,则输出所猜中的数字,并结束游戏。
import java.util.Scanner;
import java.util.Random; //定义随机数
public class Demo11 { // 标题 class类
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
//1定义一个变量max,接受从控制台输入最大的取值范围
System.out.println("请输入所猜数字的上限:");
int max=scan.nextInt();
//2输出随机数的范围
System.out.println("所要猜测的数字范围1~"+max);
//3求出随机数 Random
Random random=new Random();
int result=random.nextInt(max+1); //在1~max之间
//4定义变量count,保存猜测的次数(count=0)
int count=0;
//5编写while死循环
while(true){
//6统计count的值,猜数字的次数
count++;
System.out.println("第"+count+"次猜测");
int number=scan.nextInt();
//7猜对了,输出猜数字的次数 以及数字, 退出循环
if(number==result){
System.out.println("猜对了,结果为"+result+"一共猜测"+
count+"次");
break;
}
//8猜错了,继续循环,大了还是小了
if(number>result){
System.out.println(number+"大了");
continue;
}
if(number<result){
System.out.println(number+"小了");
continue;
}
}
}
}
//猜数字游戏
public static void main(String[] args) {
Scanner scan =new Scanner(System.in);
int result = (int)(Math.random()*100+1);
System.out.println("答案"+result);
System.out.println("猜吧!");
int num = scan.nextInt();
int times = 1;
int timess = 1;
while(result!=num){
times++;
if(num==-1){
break;
}
if(num>result){
System.out.println("猜大了,重新猜");
}else{
System.out.println("猜小了,重新猜");
}
System.out.println("第"+times+"次猜测");
num = scan.nextInt();
timess++;
}
if(result==num){
System.out.println("恭喜你,猜对了。"+"共猜测了"+timess+"次");
}else {
System.out.println("下次再来吧");
}
}
}
26 // 求出1~100之间所有整数的和
public static void main(String[] args){
int sum=0;
for(int a=1;a<=100;a++){
sum=sum+a;
}
System.out.println(“总和为:”+sum);
}
}
27 //求出1~1000之间所有奇数的和;
public static void main(String[] args){
int sum=0;
for(int a=1;a<=1000;a++){
if(a%2!=0){
System.out.println("奇数为:"+a);
sum=sum+a;
}
} System.out.println("奇数和为:"+sum);
}
}
28 //求出1~10的阶乘 .1234…*20;
public static void main(String[] args){
double sum=1;
for (double a=1;a<=10;a++){
System.out.println(a);
sum=sum*a;
System.out.println(sum);
}
}
}
29 //使用do-while语句输出 1-100之间的所有整数
public static void main(String[] args){
int a=1;
do{
System.out.println(a);
a++;
}
while (a<=100);
}
}
30 // 输入一个数,判断该值的等级
// 输入num<100或num<0;即输入错误 重新输入
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
System.out.println("请输入分数");
int num=scan.nextInt();
do {if(num>100||num<0){
System.out.println("输入错误");
System.out.println("继续输入");
num=scan.nextInt();
}}while(num>100||num<0);
if(num>90&num<=100){
System.out.println(num+"A级");
}if(num>=80&&num<90){
System.out.println(num+"B级");
}
if(num>=70&num<80){
System.out.println(num+"C级");
}
if(num>=60&num<70){
System.out.println(num+"D级");
}
if(num<60&num>=0){
System.out.println(num+"不及格");
}
}
}
31 // 用户输入1000-2018之间的年份,判断该年份为闰年还是非闰年
//当年份不在1000-2018之间,输入错误,并重新输入
public class Demo2 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入年份(1000-2018)");
int year=scan.nextInt();
do{if(year>2018||year<1000){
System.out.println("输入错误");
System.out.println("重新输入");
year=scan.nextInt();
}}while (year>2018||year<1000);
if((year%4==0&&year%100!=0)||year%400==0){
System.out.println("闰年:"+year);
}else{
System.out.println("非闰年"+year);
}
}
}
32//数组的表达方式
//数据类型[] 数组名 = new 数据类型[大小];
public static void main(String[] args){
//数组的两种表达式
int[] num={1,2,55,1,555,55,8,98};
/*int[] num=new int[5];
* num[0]=1;
num[1]=3;
num[2]=24;
num[3]=11;
num[4]=12;
*/
System.out.println("cd"+num.length); //.length长度
for(int i=0;i<num.length;i++){
System.out.println(num[i]);//提取num中的值
}}}
33//用户输入三个数,输出该数的最大值和最小值
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入第一个数");
int num1=scan.nextInt();
System.out.println("请输入第二个数");
int num2=scan.nextInt();
System.out.println("请输入第三个数");
int num3=scan.nextInt();
if(num1>=num2&&num1>=num3){
System.out.println("最大值:"+num1);
}
if(num2>=num1&&num2>=num3){
System.out.println("最大值:"+num2);
}
if(num3>=num1&&num3>=num2){
System.out.println("最大值:"+num3);
}
if(num1<=num2&&num1<=num3){
System.out.println("最小值:"+num1);
}
if(num2<=num3&&num2<=num1){
System.out.println("最小值"+num2);
}
if(num3<=num1&&num3<=num2){
System.out.println("最小值:"+num3);
}}}
34//提取数组中的值
int[] a = {1,5,1,465,1,3,47,465,31,12,22};
for (int i = 0; i <= a.length; i++) { //提取数组全部定义
System.out.println(a[i]); //输出
System.out.println(a[1]); //提取单个值,下标默认从[0]开始
35// 随机生成字母,判断它们是元音字母还是辅音字母
public static void main(String[] args){
for(int i = 0;i < 5; i++){ // 定义随机字母数量
char c =(char)(Math.random() * 26 +'a'); //随机产生一个字母
switch(c){
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
System.out.println(c+":元音字母");
break;
case 'y':
case 'w':
System.out.println(c+":辅音字母");
break;
default:
System.out.println(c+":两个都不是");
}}}}
36// 编写程序判断某一个年份是否为闰年(使用if-else)
public static void main(String[] args){
//本案例需要使用交互的方式判断某年是否为闰年:用户从控制台输入需要判断的年份值,
// 由程序使用if-else判断该年是否为闰年,并将判断结果输出到控制台
//1. 定义 Scanner;
Scanner scan = new Scanner(System.in);
//2.接收用户输入的年份 year;
System.out.println("请输入年份(如2012):");
int year = scan.nextInt();
//3.用if-else 判断该年份是否为 闰年 并输出 闰年条件:(*%4==0&&*%100!=0)||*%400==0;
if((year%4==0&&year%100!=0)||year%400==0){
System.out.println(year+"是闰年");
}else{
System.out.println(year+"不是闰年");
}
}}
37//用户从控制台接收两个整数,通过程序找出两个数中的最大值
public static void main(String[] args) {
//1.定义Scanner并接收用户输入
Scanner scan = new Scanner(System.in);
System.out.println("请依次输入两个整数:a,b (以空格隔开)");
int a = scan.nextInt();
int b = scan.nextInt();
//2. 用三目运算符 定义最大值并输出
int max = a>b ? a:b;
System.out.println(max);
}}
38// 三个三目运算符 定义
// int max=(a>b?a:b)>c ? (a>b?a:b):c;
// 输出三个int数中的最大值(提高题,选做)
public static void main(String[] args){
//用户从控制台接收三个整数,通过程序找出三个数中的最大值
// 1.定义scanner;
Scanner scan = new Scanner(System.in);
//2. num1,num2,num3用于接收用户输入的三个数.并输出用户输入的三个数分别为多少
System.out.println("请以此输入三个数并以空格隔开");
int num1 = scan.nextInt();
int num2 = scan.nextInt();
int num3 = scan.nextInt();
System.out.println("你输入的数分别为"+num1+","+num2+","+num3);
//3.用if语句 判断 大小并以此输出(num1>num2&&num1>num3)..System.out.println(num1+"最大值");
if(num1>num2 && num1>num3){
System.out.println("最大值为:"+num1);
}else if(num2>num3 && num2 >num1){
System.out.println("最大值为:"+num2);
}else if(num3>num1 && num3>num2){
System.out.println("最大值为:"+num3);
}
39//switch语句写出 1.显示全部记录,2.查询登陆记录,3.欢迎下次再来。其他输出错误
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入:1.显示全部记录 2.查询登陆记录 3.欢迎下次再来");
int command = scan.nextInt();
switch (command){
case 1:
System.out.println("显示全部记录");
break;
case 2:
System.out.println("查询登陆记录");
break;
case 3:
System.out.println("欢迎下次再来");
break;
default:
System.out.println("输入错误");
}}}
40//if语句表达
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入:1.显示全部记录 2.查询登陆记录 3.欢迎下次再来");
int command = scan.nextInt();
if(command==1){
System.out.println("显示全部记录");
}else if(command==2){
System.out.println("查询登陆信息");
}else if(command==3){
System.out.println("欢迎下次再来");
}else{
System.out.println("输入错误");
}}}
41//编写三个数值的排序程
import java.util.Scanner;
public class Console1 {
public static void main(String[] args){
// 使用程序为用户所录入的 3 个数值进行升序排列,并将排序后的结果输出到控制台
//1.定义Scanner;
Scanner scan = new Scanner(System.in);
//2. abc分别接收用户输入的三位数
System.out.println("请依次输入三个整数a b c: 用空格隔开");
int a = scan.nextInt();
int b = scan.nextInt();
int c = scan.nextInt();
42 // 3.输出 用户输入的数
System.out.println("你输入的数为"+"a="+a+","+"b="+b+","+"c="+c);
//4.升序排列,并输出
int t = 0;
if(a>b){ //a>b 则a换位置,满足a
t=a;a=b;b=t;}
if(a>c){ //a>c 则a换位置,满足a
t=a;a=c;c=t;}
if(b>c){ //b>c 则b换位置,满足 b
t=b;b=c;c=t;
}
System.out.print("升序排列后,结果为:"+"a="+a+" ");
System.out.print("b="+b+" ");
System.out.println("c="+c);
}}
43// 输出 行动是成功的阶梯10次,以及1-9*9的值
int num = 1;
while(num<=10){
System.out.println("行动是成功的阶梯"+num);
num++;
}
int a = 1;
while(a<=9){
System.out.println("正序"+a+"*9="+a*9);
a++;
}
int b = 9;
while (b>=1){
System.out.println("倒序"+b+"*9="+b*9);
b--;
}
int c = 1;
while (c<=9){
System.out.println("奇数"+c+"*9="+c*9);
c+=2;
} }}
44//猜数字
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = 250; // 需要猜的值
System.out.println("猜吧");
int guess = scan.nextInt();
while(guess!=num){
// 输入0 提前退出
if(guess==0){
break;
}
// 猜大了或猜小了 提示。
if(guess>num){
System.out.println("猜大了,重新猜");
}else{
System.out.println("猜小了,重新猜");
}
guess = scan.nextInt();
}
//结束语句,才对了,输出 恭喜你,输入0结束,输出,下次再来
if(guess==num){
System.out.println("恭喜你,猜对了");
}else{
System.out.println("下次再来吧");
}
}}
45//猜数字版本2
public static void main(String[] args){
/*
* 猜吧!造一个隐藏数, while循环,猜大了,猜小了, 输入-1结束
* 总分500,猜错一次减10分,最多猜,第51次结束循环。
* 纪录次数,
*/
Scanner scan = new Scanner(System.in);
System.out.println("猜吧(满分500,猜错一次减10分,最多能猜50次)");
int result = scan.nextInt();
int num = (int)(Math.random()*100+1);//随机生成1-100之间的随机数
// System.out.println(num);//需要猜测的答案
int score = 500; //初始分数
int time = 0;//次数
while(result!=num){
if(result==-1){ //输入-1结束
break;
}
if(time>=50){//最多猜50次
break;
}
time++; //纪录次数
score-=10;//猜错扣除分数
if(result>num){
System.out.println("大了,重新猜");
}else{
System.out.println("小了,重新猜");
}
result = scan.nextInt();
}
if(result==num){
System.out.println("恭喜你,猜对了");
}else{ //当result!=num时,说明是输入-1或者次数到了,则输出下次再来吧
System.out.println("下次再来吧!");
}
System.out.println("猜测次数为"+time+"最终分数为"+score);
}
}
46// 猜数字2
if{
}while(); 语句
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = (int)(Math.random()*1000+1); // 需要猜的值
System.out.println(num); //外挂,(显示随机数值的答案)
int a= 0; // 定义空值,记录猜测次数
int guess=0; //给guess定义空值,不然第一次猜对报错。
do{
System.out.println("猜吧");
guess = scan.nextInt();
if(guess==0){ // 输入0.结束语句
break;
}
if(guess>num){
System.out.println("猜大了,重新猜");
}else if(guess<num){ // do while 必须 else if (条件) 否则程序不正常运行
System.out.println("猜小了,重新猜");
}
a++; // 猜一次 记录一次
}while(guess!=num);
if(guess==num){ // 定义 猜对了输出猜对了, else就是 输入0结束 输出 下次再来
System.out.println("恭喜你,猜对了");
}else{
System.out.println("下次再来吧!");
} System.out.println("猜的次数为:"+a);
}}
47//猜数字 do{}while(); 语句 另一种写法
public static void main(String[] args){
/* 分析:
* 1.定义一个random,a产生一个1~1000的随机值。int a=(int)(Math.random *1000+1);
* +1是因为把让int0变为1,random初始是0-0.999. 需强转
* 2.定义Scanner,num 用于接收 用户 猜的值
* 3.定义dowhile,猜的值大了,小了 都请重新输入,输入0结束
* 4.定义一个b=1; 用于记录猜测的次数
* 5.定义一个if语句,猜对了输出恭喜。 输入0结束的, 输出下次再来吧!
*/
Scanner scan = new Scanner(System.in);
int a=(int)(Math.random()*1000+1);
System.out.println(a);// 外挂,显示随机数
System.out.println("猜吧");
int num = scan.nextInt();
int b = 1;
do{
if(num==a){
break;
}
if(num==0){
break;
}
if(num>a){
System.out.println("猜大了,重新猜");
}else {
System.out.println("猜小了,重新猜");
}
num = scan.nextInt();
b++;
}while(num!=a);
System.out.println("一共猜了"+b+"次");
if(num==a){
System.out.println("恭喜你,猜对了");
}else{
System.out.println("下次再来吧!");
} }}
48//输入年份和月份,输出该月的天数(使用switch-case)
public static void main(String[] args) {
// 一年有 12 个月,而每个月的天数是不一样的。其中,有7个月为 31 天,称为大月,分别为1、3、5、7、8、10、12月;有 4个月为
// 30 天,
// 称为小月,分别为4、6、9、11月;还有二月比较特殊,平年的二月只有28天,而闰年的二月有 29 天。
// 本案例需要使用交互的方式计算某年某月的天数:由用户在控制台输入年份和月份值,程序计算该年该月的天数,并将结果输出在控制台。
// 1.定义Scanner。接收年份和月份并输出
Scanner scan = new Scanner(System.in);
System.out.println("请输入年份:");
int year = scan.nextInt();
System.out.println("请输入月份:");
int month = scan.nextInt();
// 2.定义 num 用switch接收月份 并分别输出大月和小月的年份;
// 3.判断2月是否为闰年,闰年 条件 (year%4==100 && year%100!=0)||year%400==0;
int num = month;
switch (num) {
case 1:
System.out.println(year + "年" + month + "月有" + 31 + "天");
break;
case 2:
if ((year % 4 == 100 && year % 100 != 0) || year % 400 == 0) {
System.out.println(year + "年" + month + "月有" + 29 + "天");
} else {
System.out.println(year + "年" + month + "月有" + 28 + "天");
}
break;
case 3:
System.out.println(year + "年" + month + "月有" + 31 + "天");
break;
case 4:
System.out.println(year + "年" + month + "月有" + 30 + "天");
break;
case 5:
System.out.println(year + "年" + month + "月有" + 31 + "天");
break;
case 6:
System.out.println(year + "年" + month + "月有" + 30 + "天");
break;
case 7:
System.out.println(year + "年" + month + "月有" + 31 + "天");
break;
case 8:
System.out.println(year + "年" + month + "月有" + 31 + "天");
break;
case 9:
System.out.println(year + "年" + month + "月有" + 30 + "天");
break;
case 10:
System.out.println(year + "年" + month + "月有" + 31 + "天");
break;
case 11:
System.out.println(year + "年" + month + "月有" + 30 + "天");
break;
case 12:
System.out.println(year + "年" + month + "月有" + 31 + "天");
break;
}}}
49//个人所得税计算程序 并输出税后工资
public class Console {
// 应纳税额=(工资薪金所得-扣除数)×适用税率-速算扣除数。其中,扣除数为3500元,适用税率以及速算扣除数如下表所示。
/*
* 全月应纳税所得额 税率 扣除数 全月应纳税额不超过1500元 3% 0 全月应纳税额超过1500元至4500元 10% 105
* 全月应纳税额超过4500元至9000元 20% 555 全月应纳税额超过9000元至35000元 25% 1005
* 全月应纳税额超过35000元至55000元 30% 2755 全月应纳税额超过55000元至80000元 35% 5505
* 全月应纳税额超过80000元 45% 13505
*/
// 上表中的全月应纳税所得额=工资薪金所得-扣除数。
// 本案例要求计算个人所得税的缴纳额度:用户从控制台输入税前工资的金额,程序计算所需要交纳的个人所得税的金额,并将计算结果输出到控制台。
// 1.定义Scanner,并接收用户输入薪资salary。
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入税前工资");
double salary = scan.nextDouble();
double a = 3500;
double num = salary-a;
if(num<1500){
double b = (num*0.03-0);
System.out.println("应纳税为:"+b);
}else if(num>=1500 && num<=4500){
double b = (num*0.1-105);
System.out.println("应纳税为:"+b);
}else if(num>=4500 && num<=9000){
double b = (num*0.2-555);
System.out.println("应纳税为:"+b);
System.out.println("税后工资为:"+(salary-b));
} if (num >= 9000 && num <= 35000) {
double b = (num * 0.25 - 1005);
System.out.println("应交个人所得税为:" + b);
System.out.println("税后工资为:" + (salary - b));
}
if (num >= 35000 && num <= 55000) {
double b = (num * 0.3 - 2755);
System.out.println("应交个人所得税为:" + b);
System.out.println("税后工资为:" + (salary - b));
}
if (num >= 55000 && num <= 80000) {
double b = (num * 0.35 - 5505);
System.out.println("应交个人所得税为:" + b);
System.out.println("税后工资为:" + (salary - b));
}
if (num >= 80000) {
double b = (num * 0.45 - 13505);
System.out.println("应交个人所得税为:" + b);
System.out.println("税后工资为:" + (salary - b));
}
}}
50//成绩等级判断
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
/*
* 1.定义Scanner,接收用户输入的成绩
* 2.if语句判断,分数等级。 输入<0或>100提示输入错误,并重新输入
* 重新接收用户输入需要使用while语句
*/
System.out.println("请输入成绩");
double score = scan.nextDouble();
while(score<0 || score>100){
System.out.println("输入错误,请重新输入");
score = scan.nextDouble();
}
if(score>=90){
System.out.println(score+"A-优秀");
}else if(score>=80 && score<90){
System.out.println(score+"B-良好");
}else if(score>=60 && score<80){
System.out.println(score+"C-及格");
}else if(score<60){
System.out.println(score+"D-不及格");
} }}
51//命令解析程序 switch case 语句
public static void main(String[] args){
/*
* 1.定义Scanner,提示用户输入并,接收用户输入指令
* 2.若输入与提示不符,输入错误,请重新输入 输入0结束
* 3.定义switch case 内容 并输出用户输入的指令内容
* 4.在每个case后面加上break; 否则会全部输出
*/
Scanner scan = new Scanner(System.in);
System.out.println("请输入指令,1.呼叫张 2.呼叫崔 3.呼叫杨 4.呼叫王");
int command = scan.nextInt();
while(command<0 || command>4){
System.out.println("输入错误,请重新输入,输入0结束");
if(command==0){
break;
}
command = scan.nextInt();
}
if(command==0){
System.out.println("下次再来吧!");
}
switch(command){
case 1:
System.out.println("张:您好");
break;
case 2:
System.out.println("崔:您好");
break;
case 3:
System.out.println("杨:您好");
break;
case 4:
System.out.println("王:您好");
break;
}}}
52//编写三个数值的排序程
public static void main(String[] args) {
// 使用程序为用户所录入的 3 个数值进行升序排列,并将排序后的结果输出到控制台
// 1.定义Scanner;
Scanner scan = new Scanner(System.in);
// 2. abc分别接收用户输入的三位数
System.out.println("请依次输入三个整数a b c: 用空格隔开");
int a = scan.nextInt();
int b = scan.nextInt();
int c = scan.nextInt();
// 3.输出 用户输入的数
System.out.println("你输入的数为" + "a=" + a + "," + "b=" + b + "," + "c=" + c);
// 4.升序排列,并输出
int t = 0;
if (a > b) { // a>b 则a换位置,满足a
t = a;
a = b;
b = t;
}
if (a > c) { // a>c 则a换位置,满足a
t = a;
a = c;
c = t;
}
if (b > c) { // b>c 则b换位置,满足 b
t = b;
b = c;
c = t;
}
System.out.print("升序排列后,结果为:" + "a=" + a + " ");
System.out.print("b=" + b + " ");
System.out.println("c=" + c);
}
}
53//输入年份和月份,输出该月的天数(使用switch-case)
// 一年有 12 个月,而每个月的天数是不一样的。其中,有7个月为 31 天,称为大月,分别为1、3、5、7、8、10、12月;有 4个月为
// 30 天,
// 称为小月,分别为4、6、9、11月;还有二月比较特殊,平年的二月只有28天,而闰年的二月有 29 天。
// 本案例需要使用交互的方式计算某年某月的天数:由用户在控制台输入年份和月份值,程序计算该年该月的天数,并将结果输出在控制台。
// 1.定义Scanner。接收年份和月份并输出
Scanner scan = new Scanner(System.in);
System.out.println("请输入年份:");
int year = scan.nextInt();
System.out.println("请输入月份:");
int month = scan.nextInt();
switch(month){
case 2:
if((year%4==0 && year%100!=0)||year%400==0){
System.out.println(year+"年"+month+"月有"+28+"天");
}else{
System.out.println(year+"年"+month+"月有"+29+"天");
}
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.println(year+"年"+month+"月有"+31+"天");
break;
case 4:
case 6:
case 9:
case 11:
System.out.println(year+"年"+month+"月有"+30+"天");
}
} }
54//求数组的最大值和最小值
public static void main(String[] args){
/*
* 1.定义数组长度为10并遍历数组
* 2.定义Math.random 0-99之间随机取值
* 3.计算 10个数组中的最大值 并输出
*/
int[] arr = new int[10];
for(int i = 0;i<arr.length;i++){
arr[i] = (int)(Math.random()*100);
System.out.println(arr[i]);
}
int max = arr[0];
int min = arr[0];
for(int i = 1; i<arr.length;i++){
if(arr[i]>max){
max = arr[i];
}
if(arr[i]<min){
min = arr[i];
}
}
System.out.println("最小值为"+min);
System.out.println("最大值为"+max);
}}
55//99乘法表
for(int a = 1; a<=9; a++){
for(int b = 1;b<=a;b++){
System.out.print(b+"*"+a+"=");
System.out.print(" ");
}
System.out.println();
56// 随机加法运算器
public static void main(String[] args){
//1.出题。2.答题。3.判题. 输入-1退出
/*
* 1.随机出2个0-99之间的数相加(Math.randam()*100),并提示输出a+b=?
* 2.定义一个num=10,为题目数量,定义一个score为分数
* 3.定义一个times,记录答对次数
* 5.定义Scanner接受用户输入的结果
* 6.输入-1结束
* 7.判断对错 对了得10分。错了 不得分,输出最终分数
*/
Scanner scan = new Scanner(System.in);
int num ;
int score = 0;
int times = 0;
for(num = 1; num<=10;num++){
int a =(int)(Math.random()*100);
int b =(int)(Math.random()*100);
System.out.println("("+num+")"+a+"+"+b+"=?");
int result = a+b;
System.out.println("请输入结果");
int c = scan.nextInt();
if(c==-1){
break;
}
if(c==result){
score+=10;
System.out.println("正确");
times++;
}else{
System.out.println("错误");
}
}
System.out.println("答对次数为"+times);
System.out.println("得分为:"+score);
}}
57 //9,99,999,…,9999999999。要求使用程序计算此数列的和,并在控制台输出结果。
public static void main(String[] args){
/* long v =9999999999l;
long sum=0;
for(long a = 9l;a<=v;a=a*10+9l){
sum = sum+a;
}
System.out.println(sum);
}
}*/
// 方法二;
long a = 0;
long sum = 0;
for(long b =1;b<=10;b++){
a = a*10+9;
sum = sum + a;
}
System.out.println("sum="+sum);
}}
58//将数组元素最大值放在数组最后一个元素的下一个位置
/*
* 1定义一组10个随机数
* 2求出最大值
* 3数组扩容
* 4把求出的最大值替代扩容后的数
*/
public static void main(String[] args){
int[] arr=new int[10];
System.out.print("10个随机数:");
for(int i = 0;i<arr.length;i++){
arr[i] = (int)(Math.random()*100);
System.out.print(arr[i]+" ");
}
int max = arr[0];
for(int i = 0;i<arr.length;i++){
if(arr[i]>max){
max=arr[i];
}
}
System.out.println();
System.out.println("最大值为:"+max);
arr = Arrays.copyOf(arr, arr.length+1);
System.out.print("扩容后为:");
for(int i = 0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
arr[arr.length-1]=max;
System.out.println();
System.out.print("最大值放最后为:");
for(int i = 0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
}
}
59//查询数组最小值,并将其放在第一位
public static void main(String[] args){
/*
* 1.定义数组arr[10]
* 2.随机生成10组数
* 3.定义一个min[0]并遍历数组求出最小值
* 4.扩容,扩容后放在第一,并把最小值代替为扩容后的值
*/
int[] arr=new int[10];
System.out.println("随机生成10个数为:");
for(int i = 0;i<arr.length;i++){
arr[i] = (int)(Math.random()*100);
System.out.print(arr[i]+" ");
}
System.out.println();
System.out.print("最小值为:");
int min=arr[0];
for(int i = 0;i<arr.length;i++){
if(arr[i]<min){
min=arr[i];
}
}
//int[] a1 = new int[6];
//System.arraycopy(a,1, a1,0,5);
System.out.println(min);
int[] a = new int[11];
a[0]=min; //将最小值赋给扩容后的数
System.arraycopy(arr,0,a,1,a.length-1);
for(int i =0;i<a.length;i++){
System.out.print(a[i]+" ");
}
/*System.out.println("扩容:");
for(int i = 0;i
}
}
//方法2:
public static void main(String[] args){
int[] arr = new int[10];
for(int i=0;i<arr.length;i++) {
arr[i] = (int)(Math.random()*100);
System.out.print(arr[i]+" ");
}
int min = arr[0];
for(int i=1;i<arr.length;i++) {
if(arr[i]<min) {
min = arr[i];
}
}
System.out.println("最小值为:"+min);
int[] as = new int[arr.length+1];
System.arraycopy(arr,0,as,1,arr.length);
as[0] = min;
for(int i=0;i<as.length;i++) {
System.out.print(as[i]+" ");
}
}
}
60//随机生成10组数,
//用冒泡排序输出
int[] arr = new int[10];
System.out.println("随机生成十组数为:");
for(int i = 0;i<arr.length;i++){
arr[i]=(int)(Math.random()*100);
System.out.print(arr[i]+" ");
}
System.out.println();
System.out.println("冒泡排序后为:");
for(int i = 0;i<arr.length-1;i++){
for(int j = 0;j<arr.length-1-i;j++){
if(arr[j]>arr[j+1]){
int t=arr[j+1];
arr[j+1]=arr[j];
arr[j]=t;
}
}
System.out.print(arr[i]+" ");
}
}}
61// 类的使用
public static void main(String[] args){
say();
sayHi("ccx");
sayHello("zfy",45);
double a = getNum();
System.out.println(a);
int b = plus(5,6);
System.out.println(b);
int m=5,n=6;int c =plus(m,n);
System.out.println(c);
int e = plus(5,5);
System.out.println(e);
}
public static void say(){
System.out.println("Say:你好");
}
public static void sayHi(String name){
System.out.println("哈喽,我是"+name);
}
public static void sayHello(String name,int age){
System.out.println("你好,我是"+name+",并且今年"+age+"岁了");
}
public static double getNum(){
return 88.88;
}
public static int plus(int num1,int num2){
return num1+num2;
}}
62//求数列和 1+1/2+1/3…+1/n(n>=2)。
public static void main(String[] args){
/*
* 用户在控制台录入需要计算的整数 n 的值,程序计算此数列的和,并在控制台输出结果。
*/
Scanner scan = new Scanner(System.in);
System.out.println("请输入一个分母:");
double n = scan.nextDouble();
double sum = 0;
for(int b=1;b<=n;b++){
if(n>=1){
sum = sum+ 1.0/b;
}
}
System.out.println("sum="+sum);
}}
63//随机生成数组
public static void main(String[] args){
//封装一个方法generateArray,该方法实现生成指定长度的int数组,该数组的元素 //为0到指定范围内的随机数,并将该数组返回。
int[] c = generateArray(10,20); // 10为,长度。20为,随机数的范围
System.out.println("随机生成的数组为:");
for(int i =0;i<c.length;i++)
System.out.print(c[i]+" ");
}
public static int[] generateArray(int a,int b){
int[] arr = new int[a]; //a为长度
for(int i = 0;i<a;i++){
arr[i] = (int)(Math.random()*b);//b为随机取值范围
}
return arr;
}}
64///*1.创建Person类,包含:
1)成员变量:name,age,address
2)构造方法:Person(3个参数){}
3)方法:sayHi(){输出3个数据}
2.创建Student类,继承Person,包含:
1)成员变量:stuId
2)构造方法:Student(4个参数){}
3.创建Teacher类,继承Person,包含:
1)成员变量:salary
2)构造方法:Teacher(4个参数){}
4.创建Doctor类,继承Person,包含:
1)成员变量:level
2)构造方法:Doctor(4个参数){}
5.创建Test类,main中:
1)创建Student数组ss,填充数据,遍历问好
2)创建Teacher数组ts,填充数据,遍历问好
3)创建Doctor数组ds,填充数据,遍历问好*/
public static void main(String[] args) {
Student[] ss = new Student[3];
ss[0] = new Student("崔崇鑫", 21, "开阳县", "16340416");
ss[1] = new Student("张发阳", 21, "开阳县", "16340417");
ss[2] = new Student("杨松", 22, "羊场", "12345678");
for (int i = 0; i < ss.length; i++) {
ss[i].sayHi();
}
Teacher[] ts = new Teacher[3];
ts[0] = new Teacher("张三", 44, "浙江", 5500);
ts[1] = new Teacher("李四", 35, "广东", 6000);
ts[2] = new Teacher("王五", 28, "贵州", 4000);
for (int i = 0; i < ss.length; i++) {
ts[i].tr();
}
Doctor[] ds = new Doctor[3];
ds[0] = new Doctor("赵六", 43, "黑龙江", "主刀医生");
ds[1] = new Doctor("陈七", 57, "北京", "某院主任");
ds[2] = new Doctor("农夫山泉", 58, "上海", "院长");
for (int i = 0; i < ds.length; i++) {
ds[i].dr();
} }}
class Person {
String name;
int age;
String address;
Person(String name, int age, String address) {
this.name = name;
this.age = age;
this.address = address;
}
void sayHi() {
System.out.println("你好,我叫" + name + ",今年" + age + "岁了,家住" + address);
}}
class Student extends Person {
String stuId;
Student(String name, int age, String address, String stuId) {
super(name, age, address);
this.stuId = stuId;
}}
class Teacher extends Person {
double salary;//工资
Teacher(String name, int age, String address, double salary) {
super(name, age, address);
this.salary = salary;
}
void tr() {
System.out.println("我职业是教师,名叫" + name + "," + "今年" + age + "岁了,家住" + address + ",工资为:" + salary);
}
}
class Doctor extends Person {
String level;
Doctor(String name, int age, String address, String level) {
super(name, age, address);
this.level = level;
}
void dr() {
System.out.println("我职业是医生,名叫" + name + "," + "今年" + age + "岁了,家住" + address + ",任职:" + level);
}}
65//数组的数组,使用方法
int[][] arr= new int[3][];//[3]是数组长度,[]代表每一个数组中都长度
arr[0] = new int[2]; //第一个数组的长度为2
arr[1] = new int[3]; //第二个数组都长度为3
arr[2] = new int[4];
arr[1][2] = 100; // 给第2个数组中第3个元素赋值为100
System.out.println(arr[1][2]);//输出第二个数组中第三个
int[][] arr1 = new int[3][4]; //一共有3个组数,每个数组都长度为4
for(int i = 0;i<arr1.length;i++){ //遍历数组arr1中都元素[3]
for(int j = 0;j<arr1[i].length;j++){//遍历数组arr1中每一个数组的长度,arr1[i]
arr1[i][j] = 250; // 给每一个数组赋值为250
System.out.println(arr1[i][j]);
}
//随机生成26个字母
boolean[] ar = new boolean[26];//判断是否26以内,默认false输出
int times = 0;
for(int i=0;i<10;i++ ){
times++;
int a;
do{
a = (int)(Math.random()*26)+97; //生成一个ask马值。a=97,b=98
}while(ar[a-97]); //判断是否26以内
ar[a-97] = true; //为true不输出,返回do while语句,false下一步
char b = (char)a; //将a转为char语句
System.out.println(times+")"+b);
}
}
//获取文件名的后缀部分
String filenName = "logo.png";
int index = filenName.lastIndexOf(".")+1;//截取最后一个. +1是.后面的数
String ext = filenName.substring(index); //获取index值
System.out.println(ext);
}
// 控制台输入学生姓名 和5门功课的各科成绩,并输出平均成绩
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.print("输入学生姓名:");
String name = scan.next();
int scort;
int sum = 0;
String[] xz = {"语文","数学","英语","化学","物理"};
for(int a=0;a<5;a++){
System.out.print("请输入5门功课中的"+xz[a]+"门课的成绩:");
scort = scan.nextInt();
sum+=scort;
if(a==4){
System.out.println(name+"的平均分是"+sum/5);
}
}
scan.close();
}
// 有大写字符串若干,输出每个字符串的个数
public static void main(String[] args){
String str = "ADFJSDAKVCZNVASDLFKJWKVNXCZVMQRPIOEQWG";
int[] counter = new int[26];
for(int i=0; i<str.length();i++){
counter[str.charAt(i)-'A']++;
}
System.out.println(Arrays.toString(counter));
}
//10进制转换 7代表10进制转换为7进制
public static void main(String[] args){
System.out.println(parseInt("123",7));
System.out.println(Integer.parseInt("123",7));
}
public static int parseInt(String num,int base){
//String num = "123";
int weight = 1;//base = 7;
int sum = 0;
for(int i=num.length()-1;i>=0;i--){
sum += (num.charAt(i)-'0') * weight;
weight *= base;
}
return sum;
}