java程序设计作业 c.njupt.edu.cn java实现第三次作业

王利国的"Java语言程序设计第3次作业(2018)"详细

    作业结果详细

总分:100

选择题得分:60

1. 设有如下定义语句: String s1=”My cat”; int m=s1.compareTo(“My a cat”); 语句被执行后m的值为( )

A.2

B.1

C.0

D.-2

正确答案是: A

2. 语句 String s1=new String(“Hello”); String s2=new String(“Hello”); System.out.println(s1==s2); System.out.printlv(s1.equals(s2)); 执行后的输出结果是( )

A.Hello false

B.Hello true

C.Hello Hello

D.false true

正确答案是: D

3. 执行下列语句 int[] lx={2,3,4,5}; lx[3]=lx[3]==--lx[0]?++lx[1]:lx[2]--; 后,数组lx的元素值分别为( )

A.1,2,3,4

B.1,3,3,3

C.1,2,3,3

D.1,3,3,4

正确答案是: D

4. 在一个应用程序中定义了数组a:int[] a={1,2,3,4,5,6,7,8,9,10},为了打印输出数组a的最后一个数组元素,下面正确的代码是( )

A.System.out.println(a[10]);

B.System.out.println(a[9]);

C.System.out.println(a[8]);

D.System.out.println(a[a.length]);

正确答案是: B

5. 设有定义语句int a[]={36,72,99};则以下对此语句叙述错误的是( )

A.该语句定义了一个名为a的一维数组;

B.a数组有3个元素;

C.数组中的每个元素是整型;

D.a数组的元素的下标为1~3;

正确答案是: D

6. 下面关于数组定义语句不正确的是( )

A.float f[]=new{2.4f,3.5f,5.7f,7.9f};

B.int a[]={1,2,3,4,5}

C.double[]d=new double[10];

D.int[]a2;

正确答案是: A

7. 下列语句序列执行后,c的值是( ) int a=3,b=4,c=0; while ((a++)<(--b))++c;

A.0

B.1

C.2

D.3

正确答案是: A

8. 下列语句序列执行后,a的值是( ) int a=1; for(int i=5;i>0;i-=2) a*=i;

A.0

B.1

C.15

D.60

正确答案是: C

9. 下列语句序列执行后,c的值是( ) int a=10,b=18,c=30; switch(b-a){ case 8 : c++; case 9 : c+=2; case 10 : c+=3; default :c/=b; }

A.31

B.32

C.2

D.33

正确答案是: C

10. 设a、b为int型变量,c、d为fload类型变量,ch为char类型变量,且所有变量均已赋值,则下列正确的switch语句是( )

A.switch(a+b);{...}

B.switch(ch+1){...}

C.switch ch {...}

D.switch(c+d){...}

正确答案是: B

11. 下列语句序列执行后,c的值是( ) int a=4,b=5,c=9,d=6; if (a>b||c<d) c--; else c++;

A.6

B.10

C.8

D.9

正确答案是: B

12. 下列语句序列执行后,c的值是( ) int a=6,b=3,c=5; if (a==b) c+=a;else c=++a*c;

A.15

B.25

C.35

D.45

正确答案是: C

13. 下列语句序列执行后,c变量的值为( ) int a=2,b=4,c=5; if (a<--b) c*=a;

A.5

B.20

C.15

D.10

正确答案是: D

14. 下列语句序列执行后,ch1变量中的值为( ) char ch1=’A’,ch2=’B’; if (ch1+2<ch2)++ch1;

A.‘A‘

B.‘B‘

C.A

D.B

正确答案是: A

15. 以下选项中,合法的赋值语句是( )

A.++m!=n--;

B.++m;

C.m=m+1=5;

D.m==1;

正确答案是: B

16. 设有定义“int a=22;long b=56;”,下面赋值不正确的语句是( )

A.a=b;

B.b=(long)a;

C.a=(int)b;

D.b=a;

正确答案是: A

17. 下面选项中,( )是正确的输出结果 int m=2,n=1; m+=m-=n; System.out.println(“m=”+m);

A.m=1

B.m=2

C.m=3

D.m=4

正确答案是: C

18. 下列语句序列执行后的结果为( ) int a=10,b=4,c=20,d=6; System.out.println(a++*b+c*--d);

A.144

B.140

C.28

D.不能执行

正确答案是: B

19. 假设以下选项中的变量都已经正确定义,则不合法的表达式是( )

A.a>4==6<1;

B.’n’-3;

C.’a’=8;

D.’A’%6

正确答案是: C

20. 假设a为已经声明并以赋初值的int类型变量,则对于a的赋值语句正确的是( )

A.int a=6;

B.a==3;

C.a=3.2f;

D.a+=a*3;

正确答案是: D

编程题得分:40

打印每月有几天  得分:10 / 10

import java.util.Scanner;

/**
* @Author liguo
* @Description
* @Data 2018-04-03
*/
public class Main {

    public static void main(String[] args) {
        int year;
        int month;
        int[] a = {1, 3, 5, 7, 8, 10, 12};
        int[] b = {4, 6, 9, 11};
        Scanner in = new Scanner( System.in );
        year = in.nextInt();
        month = in.nextInt();
        //判断二月,考虑闰年情况
        if (month == 2) {
            if (year % 100 != 0 && year % 4 == 0 || year % 400 == 0)
                System.out.println( year + "-" + month + "-29" );
            else
                System.out.println( year + "-" + month + "-28" );
        }
        //判断三十一天的情况
        for (int element : a) {
            if (month == element) {
                System.out.println( year + "-" + month + "-31" );
            }
        }
        //判断三十天的情况
        for (int element : b) {
            if (month == element) {
                System.out.println( year + "-" + month + "-30" );
            }
        }
    }
}

4-3-2 百分制成绩转换等级制成绩  得分:10 / 10

import java.util.Scanner;

/**
* @Author liguo
* @Description 从键盘上读入一个百分制成绩x(0 < = x < = 100),
* 将其转换为等级制成绩输出。本题在C语言和Java语言中要求使用switch分支实现。
* 等级制成绩(百分制成绩)
* A(90<=x<=100)
* B(80<=x<90)
* C(70<=x<80)
* D(60<=x<70)
* E(0<=x<60)
* @Data 2018-04-03
*/
public class Main {

    static void judge(int mark) {
        char degree = ‘A‘;
        int temp = mark / 10;
        if (temp >= 0 && temp < 6)
            degree = ‘E‘;
        if (temp == 6)
            degree = ‘D‘;
        if (temp == 7)
            degree = ‘C‘;
        if (temp == 8)
            degree = ‘B‘;
        if (temp == 9 || temp == 10)
            degree = ‘A‘;
        System.out.println( mark + "--" + degree );
    }

    public static void main(String[] args) {
        int temp;
        Scanner in = new Scanner( System.in );
        int x = in.nextInt();
        temp = x / 10;
        if (temp >= 0 && temp < 6)
            temp = 5;
        switch (temp) {
            case 5:
                judge( x );
                break;
            case 6:
                judge( x );
                break;
            case 7:
                judge( x );
                break;
            case 9:
                judge( x );
                break;
            case 10:
                judge( x );
                break;
        }
    }
}

用if语句求解分段函数  得分:10 / 10

import java.util.Scanner;

/**
* @Author liguo
* @Description分段函数求解:输入 x ,计算并输出 y 的值:
* y=x+100 ( 当 x < 20)
* y= x ( 当 2 0 ≤ x ≤ 100)
* y=x-100 ( 当 x > 100)
* @Data 2018-04-03
*/
public class Main {

    public static void main(String[] args) {
        double x, y;
        Scanner in = new Scanner( System.in );
        x = in.nextDouble();
        if (x < 20)
            y = x + 100;
        else if (x >= 20 && x <= 100)
            y = x;
        else
            y = x - 100;
        System.out.printf( "x=%.2f,y=%.2f", x, y );

    }
}

2-2 混合类型数据格式化输入  得分:10 / 10

import java.util.Scanner;

/**
* @Author liguo
* @Description 输入在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以1个空格分隔。
* 输入描述
* 输入在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以1个空格分隔。
* 输出描述
* 在一行中按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。
* @Data 2018-04-03
*/
public class Main {

public static void main(String[] args) {
Scanner in = new Scanner( System.in );
double d1 = in.nextDouble();
int i = in.nextInt();
String s = in.next();
char c = s.charAt( 0 );
double d2 = in.nextDouble();
System.out.printf( "%c %d %.2f %.2f", c, i, d1, d2 );
	}
}

3-4-1a 计算三位数的位数和  得分:10 / 10


import java.util.Scanner;
/**
* @Author liguo
* @Description 从键盘输入任意一个三位数的整数,请编写程序计算这个整数的数位和。
输入描述
输入一个三位数的整数
输出描述
* @Data 2018-04-03
*/
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner( System.in );
        int temp =  in.nextInt();
        temp = Math.abs(temp);
        int a = temp/100;
        int b = temp /10%10;
        int c = temp %10;
        int sum = a+b+c;
        System.out.println(sum);
    }
}

原文地址:https://www.cnblogs.com/liguo-wang/p/8727309.html

时间: 2024-10-15 02:49:18

java程序设计作业 c.njupt.edu.cn java实现第三次作业的相关文章

java程序设计作业 c.njupt.edu.cn java实现第二次作业

王利国的"Java语言程序设计第2次作业(2018)"详细 作业结果详细 总分:100 选择题得分:60 1. 表达式9==8&&3<7的运算结果是( ) A.1 B.0 C.true D.false 正确答案是: D 2. 表达式(3>2)?8:9的运算结果是( ) A.3 B.2 C.8 D.9 正确答案是: C 3. 表达式9-7<0||11>8的运算结果( ) A.true B.false C.1 D.0 正确答案是: A 4. 表达式4

20145301《Java程序设计》实验报告一:Java开发环境的熟悉

20145301<Java程序设计>实验报告一:Java开发环境的熟悉 课程:Java程序设计 实验名称:Java开发环境的熟悉 实验目的与要求: 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程: 2.完成实验.撰写实验报告,实验报告模板见QQ群,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等).解决办法(空洞的方法如“查网络”.“问同学”.“看书”等一律得0分)以及分析(从中可以得到什

20172312『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结

20172312『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结 结对伙伴 学号 :20172315 20172318 姓名 :胡智韬 陆大岳 伙伴第一周博客地址: 对结对伙伴的评价:这俩人一开始各编各的还好,到后面就开始吵,从头吵到尾,陆大胖,胡志汪,还好到最后是把代码敲出来了,不容易不容易. 小组结对编程的照片(QQ群截图) 项目中自己负责的部分 代码的综合整理,错误查找,合并以及博客的撰写. 个人贡献度划分 彭霖:胡智韬:陆大岳=3:3:4 相关过程的截图 生成题目类驱动类的

20172325『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结

20172325『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号:20172306 姓名:刘辰 结对伙伴博客链接 刘辰同学对编程的积极程度很高,并且在编程能力上很不错,有自己的想法并且能够把这个想法具体的实践出来,只是在编程的过程中和同学交流不够,总是在最后不行了才发现问题,很容易造成前功尽弃,希望在编程过程中多沟通,减少不必要的时间精力的浪费. 小组结对编程照片 项目中自己负责的部分 我负责的是两个部分,分别是: 1.利用栈将中缀表达式转后缀表达式: 2.对后缀表

2017-2018-2 1723 『Java程序设计』课程 结对编程练习_四则运算第三周总结

相关测试过程截图 测试了由中缀表达式转后缀表达式的Junit测试,分别进行了整数的和分数的,测试成功截图 由于生成问题和计算问题中,问题都是随机产生的,暂时不会进行Junit测试,故没有进行,但应是正确的,我们使用了驱动类去进行测试,结果也产生的符合格式. 小组各个成员信息 20172302侯泽洋 20172308周亚杰 测试过程中遇到的困难及解决方法 测试过程中一开始我进行的测试是始终是失败: 后来才发现一个assertEquals其实是只能对应一个实例化的类的对象,一旦是指向两个就会抛出异常

20155208 2016-2017-2 《Java程序设计》课程总结

20155208 2016-2017-2 <Java程序设计>课程总结 一.每周作业及实验报告链接汇总 一路无悔 感恩有你(预备作业一):浅谈师生关系及对java学习的期望. 精益求精,从技能中寻求经验--20155208徐子涵的第二次随笔:树立了java学习的基本目标. 第三次随笔--安装虚拟机及学习linux系统初体验:进行安装虚拟机,并且初步学习Linux. 20155208徐子涵 2016-2017-2 <Java程序设计>第1周学习总结:了解了java的发展史. 2015

week10《java程序设计》作业总结

week10<java程序设计>作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 答:: 2. 书面作业 本次PTA作业题集异常 1. 常用异常 结合题集题目7-1回答 1.1 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? 答: 经常出现的异常有: 输入类型不符NumberFormatException,数组越界ArrayIndexOutOfBoundsException,空指针NullPointerException ,

week13《java程序设计》第13次作业总结

week13<java程序设计>第13次作业总结 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 答: 1.IP与端口:ip和域名相对应,可找到主机.IP+端口(TCP/IP协议中的端口)找到主机上的对应程序. web服务:80 ftp服务:21 Telnet服务:23 2.套接字通信:实现客户端和服务器端的连接. 对从Socket对象中获得的流操作,即可进行网络通信. 建立Socket对象,从Scoket对象上获取流. 对流操作进行网络通信 关闭

Week09《java程序设计》第九次作业总结

Week09<java程序设计>第九次作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 答: 2. 书面作业 本次作业题集集合 1. List中指定元素的删除(题集题目) 1.1 实验总结.并回答:列举至少2种在List中删除元素的方法. 答: 实验总结:在public static List 删除元素的方法: 1. 从list的后面开始删除 for (int i =list.size()-1 ; i >-1; i--) { if(lis