南京邮电大学JAVA程序设计第一次实验报告

编写一个Java应用程序,用户从键盘输入一个1~99999之间的整数,程序判断这个数是几位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、3223都是回文数。

(1)实验代码如下:

import java.util.Scanner;
public class timu1 {
    public static void main(String[] args) {
        int d1,d2,d3,d4,d5;
        Scanner scan=new Scanner(System.in);
        System.out.println("请输入一个1-99999的数:");
        int num=scan.nextInt();
        if(num>=1 && num<=99999)
        {
            d1=num%10;//非0则为1位数
            d2=num%100/10;//非0则为2位数
            d3=num%1000/100;//非0则为3位数
            d4=num%10000/1000;//非0则为4位数
            d5=num/10000;//非0则为5位数
            if(d5!=0)//判断为5位数
            {
                System.out.println(num+"是一个5位数");
                if((d1*10000+d2*1000+d3*100+d4*10+d5)==num)
                {
                    System.out.println(num+"是一个回文数");
                }else
                {
                    System.out.println(num+"不是一个回文数");
                }
            }
            else if(d4!=0)//判断为4位数
            {
                System.out.println(num+"是一个4位数");
                if((d1*1000+d2*100+d3*10+d4)==num)
                {
                    System.out.println(num+"是一个回文数");
                }else
                {
                    System.out.println(num+"不是一个回文数");
                }
            }
            else if(d3!=0)//判断为3位数
            {
                System.out.println(num+"是一个3位数");
                if((d1*100+d2*10+d3)==num)
                {
                    System.out.println(num+"是一个回文数");
                }else
                {
                    System.out.println(num+"不是一个回文数");
                }
            }
            else if(d2!=0)//判断为2位数
            {
                System.out.println(num+"是一个2位数");
                if((d1*10+d2)==num)
                {
                    System.out.println(num+"是一个回文数");
                }else
                {
                    System.out.println(num+"不是一个回文数");
                }
            }
            else if(d1!=0)//判断为1位数
            {
                System.out.println(num+"是一个1位数");
                if(d1==num)
                {
                    System.out.println(num+"是一个回文数");
                }else
                {
                    System.out.println(num+"不是一个回文数");
                }
            }
            else
            {
                System.out.println(num+"您输入的数不在1-99999数之间");
            }
        }
    }
}

 (2)结果如下:

二、 编写一个Java应用程序,实现猜数字,具体要求如下:

1)随机分配一个1~100之间的整数。

2)用户反复输入自己的猜测并进行比较。

3)程序返回提示信息:“猜大了”、“猜小了”、“猜对了”,直到猜对为止。

(1)实验代码如下:

import java.util.Random;
import java.util.Scanner;
public class timu2 {
    public static void main(String[] args) {
        Scanner scan=new Scanner(System.in);
        System.out.println("给入一个1-100的随机数:");
        Random ran=new Random();
        int num=ran.nextInt(100)+1;
        System.out.println("请输入你的猜想:");
        int gussnum = scan.nextInt();
        while(gussnum!=num)
        {
            if(gussnum < num)
            {
                System.out.println("猜小了,请重新输入:");
            }
            else
            {
                System.out.println("猜大了,请重新输入:");
            }
            gussnum=scan.nextInt();
        }
        System.out.println("猜对了!");
    }
}

(2)结果如下:

三、利用循环语句打印如下图所示的图案。

(1)实验代码如下:

public class timu3 {
    public static void main(String[] args) {
        for (int m = 1; m <= 4; m++) {
            for (int n = 0; n <= m; n++) {
                System.out.print(" ");
            }
            for (int x = 1; x <= 7 - 2 * (m - 1); x++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

(2)结果如下:

四、方法的定义与调用练习。

1)将第3题的功能定义成方法,方法头为:

   static  void  printStar(int n)

  该方法的功能是输出n行用*号构成的倒三角。

2)在main方法中调用printStar方法,分别输出3行、5行与7行的倒三角图形。运行结果如下图所示:

(1)实验代码如下: 

public class timu4 {
    static void printstar(int n) {
        for (int i = n; i > 0; i--) {
            for (int k = 7; k != i; k--)
                System.out.print(" ");
            for (int j = 0; j < 2 * i - 1; j++)
                System.out.print("*");
            for (int k = 7; k != i; k--)
                System.out.print(" ");
            System.out.print("\n");
        }
    }
    public static void main(String[] args) {
        printstar (3);
        printstar (5);
        printstar (7);
    }
}

(2)结果如下:

目录

一、编写一个Java应用程序,用户从键盘输入一个1~99999之间的整数,程序判断这个数是几位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、3223都是回文数。

(1)实验代码如下:

 (2)结果如下:

二、 编写一个Java应用程序,实现猜数字,具体要求如下:

1)随机分配一个1~100之间的整数。

2)用户反复输入自己的猜测并进行比较。

3)程序返回提示信息:“猜大了”、“猜小了”、“猜对了”,直到猜对为止。

(1)实验代码如下:

(2)结果如下:

三、利用循环语句打印如下图所示的图案。

(1)实验代码如下:

(2)结果如下:

四、方法的定义与调用练习。

1)将第3题的功能定义成方法,方法头为:

   static  void  printStar(int n)

  该方法的功能是输出n行用*号构成的倒三角。

2)在main方法中调用printStar方法,分别输出3行、5行与7行的倒三角图形。运行结果如下图所示:

(1)实验代码如下: 

(2)结果如下:


  • 18
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值