栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java之流程控制习题

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java之流程控制习题

1. 将学生的学习成绩按不同的分数段分为优、良、中、及和不及格五个等级,从键盘上输入一个0~100的成绩,输出相应的等级。要求用switch语句实现。

switch的入口由case决定,出口由break决定

 System.out.println("请输入学生成绩:");
        Scanner cin = new Scanner(System.in);
        double grade;
        do {
            grade = cin.nextDouble();
        } while (grade >= 100);//输入成绩大于100分时重新输入
        
        switch ((int)(grade / 10)) {
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
                System.out.println("不及格");
                break;
            case 6:
                System.out.println("及格");
                break;
            case 7:
                System.out.println("中");
                break;
            case 8:
                System.out.println("良");
                break;
            case 9:
                System.out.println("优秀");
                break;
        }
2. 设学生的学习成绩按如下的分数段评定为四个等级:85~100为A;70~84为B;60~69为C;0~59为D。从键盘上输入一个0~100的成绩,要求用switch语句根据成绩,评定并输出相应的等级
 System.out.println("请输入学生成绩:");
        Scanner cin = new Scanner(System.in);
        double grade;
        do {
            grade = cin.nextDouble();
        } while (grade >= 100);//输入成绩大于100分时重新输入
        
        switch ((int)(grade / 10)) {
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
                System.out.println("D");
                break;
            case 6:
                System.out.println("C");
                break;
            case 7:
                System.out.println("B");
                break;
            case 8:
                if(grade<85)
                    System.out.println("B");
                else
                    System.out.println("A");
                break;
        }
3. 编写一个Java应用程序,从键盘输一个1~100之间的整数,然后判断该数是否既可以被3整除又可被7整除的数。
public static void main(String[] args) throws IOException {
        // write your code here
        System.out.println("请输入一个整数:");
        Scanner cin = new Scanner(System.in);
        int num;
        do {
           num=cin.nextInt();
        } while (num > 100);

        if(num%7==0&&num%3==0)
            System.out.println("该数符合能被7和3同时整除");
        else
            System.out.println("该数不能同时被3和7同时整除");
    }
4. 编写一个Java应用程序,在键盘上输入数n,计算并输出1!+2!+…+n!的结果。
public static void main(String[] args) throws IOException {
        // write your code here
        System.out.println("请输入一个数:");
        int n,x=0,i=1,j=1,sum=0;
        Scanner cin=new Scanner(System.in);
        n=cin.nextInt();
        do{
            x++;
            i*=j++;//计算单个阶乘值
            sum+=i;//将阶乘数的和全部相加
        }while (xpublic static void main(String[] args) throws IOException {
        // write your code here
        System.out.println("输出所有的水仙花数:");
        for(int i=100;i<1000;i++)
        {
            int a=i%10;//个位
            int b=i/10%10;//十位
            int c=i/10/10;//百位
            if(a*a*a+b*b*b+c*c*c==i)
                System.out.println(i);
        }
    }

输出所有的水仙花数:
153
370
371
407
6.从键盘输入一个整数,判断该数是否是完全数。完全数是指其所有因数(包括1但不包括其自身)的和等于该数自身的数。例如,28=1+2+4+7+14就是一个完全数。
public static void main(String[] args) throws IOException {
        // write your code here
        System.out.println("请输入一个数:");
        int num;
        Scanner cin=new Scanner(System.in);
        num=cin.nextInt();
        int sum=0;
        for(int i=1;i
            if(num%i==0)//i能被num整除
                sum+=i;//因数相加
        }
        if(sum==num)
            System.out.println("是完全数");
        else
            System.out.println("非完全数");
    }


请输入一个数:
12
非完全数

7.计算并输出一个整数各位数字之和。例如,5423的各位数字之和为5+4+2+3
public static void main(String[] args) throws IOException {
        // write your code here
        System.out.println("请输入一个数:");
        Scanner cin=new Scanner(System.in);
        int num=cin.nextInt();
        int sum=0;
        do{
            sum+=num%10;//将num的每个位上的数字相加
            num=num/10;//将num去位
        }while (num%10!=num);//当num去位到只剩开头的数字的时候才停止
        System.out.println("sum="+sum+",num="+num+".和="+(sum+num));//这里要是不用括号括起来,会变成字符串相加
    }



请输入一个数:
12345
sum=14,num=1.和=15

进程完成,退出码 0

8.将字符串按照小数点进行分割的操作!!

split()方法是将指定字符串按某指定的分隔符进行拆分,拆分将会形成一个字符串的数组并返回;

split(“.”)[0] 是一种缩写形式,把它拆开来看实际就是,先用split(“.”)方法将字符串以" . “开割形成一个字符串数组,然后再通过索引[0]取出所得数组中的第一个元素的值;
如上方代码演示 name.split(”.“)[0] , name.split(”.")[1] 根据打印结果,显然是分别取出分割开后字符串数组的第 0 位 与第 1 位;

原文链接:https://blog.csdn.net/weixin_43970743/article/details/103868538

将浮点数进行分割成整数部分和小数部分,如果强制转换会丢失精准度。可以采用将浮点数当做字符串输入,然后语义切割的方法分别输出。
 public static void main(String[] args) throws IOException {
        // write your code here
        System.out.println("请输入一个数:");
        BufferedReader buf=new BufferedReader(new InputStreamReader(System.in));
        String num=buf.readLine();
        System.out.println("整数部分="+num.split("\.")[0]);
        System.out.println("小数部分="+Integer.parseInt(num.split("\.")[1]));
        //用Integer.parseInt将小数部分的字符串给转成int形式
    }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/888269.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号