作业说明:
1.做作业之前首先在封面填上自己的学号和姓名,做完作业后请写上作业完成时间。
2.学习完第1、2单元之后必须完成本次作业,并请在规定时间内通过学习平台提交Word文档形式的电子作业,本次作业占形成性考核总成绩的10%。
作业内容:
一、选择题(每题3分,共30分)
答案填写区:
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
C |
C |
D |
C |
B |
C |
B |
D |
D |
C |
1.下列选项中,不属于Java语言特点的一项是( )。
(A)分布式(B)安全性
(C)编译执行(D)面向对象
2.在Java语言中,( )是最基本的元素?
(A)方法(B)包
(C)对象(D)接口
3.编译一个定义了3个类和10个方法的Java源文件后,会产生( )个字节码文件?扩展名是( )?
(A)13个字节码文件,扩展名为.class(B)1个字节码文件,扩展名为.class
(C)3个字节码文件,扩展名为.java(D)3个字节码文件,扩展名为.class
4. 阅读下列代码,选出该代码段正确的文件名( )。
class A{
void method1(){
System.out.println(“Method1 in class A”);
}
}
public class B{
void method2(){
System.out.println(“Method2 in class B”);
}
public static void main(String[] args){
System.out.println(“main() in class B”);
}
}
(A)A.java(B)A.class
(C)B.java(D)B.class
5.下列( )不是Java中的保留字?
(A)if(B)sizeof(C)private(D)null
6.下列( )不是合法的标识符?
(A)$million(B)$_million(C)2$_million(D)$2_million
7.下列选项中,( )不属于Java语言的基本数据类型?
(A)整数型(B)数组(C)浮点型(D)字符型
8.下列关于基本数据类型的说法中,不正确的一项是( )。
(A)boolean类型变量的值只能取真或假
(B)float是带符号的32位浮点数
(C)double是带符号的64位浮点数
(D)char是8位Unicode字符
9.下列说法中,正确的一项是( )。
(A)字符串”\\abcd” 的长度为6
(B)False是Java的保留字
(C)123.45L代表单精度浮点型
(D)False是合法的Java标识符
10.下列关于运算符优先级的说法中,不正确的一个是( )
(A)运算符按照优先级顺序表进行运算
(B)同一优先级的运算符在表达式中都是按照从左到右的顺序进行运算的
(C)同一优先级的运算符在表达式中都是按照从右到左的顺序进行运算的
(D)括号可以改变运算的优先次序
二、填空题(每题4分,共20分)
1. Java源程序文件(*.java)经 编译 生成字节码文件(*.class),再由Java虚拟机中的Java解释权执行。
2. Java虚拟机(JVM)是运行Java程序的软件环境,____解释器_______就是Java虚拟机的一部分。
3. 编译Java源文件的命令是_javac_,运行Java类文件的命令是_java_。
4. 下列语句执行后,j的值是__15___。
int j=0;
for(int i=1;i<6;i=i+2) j+=i;
5.设有如下程序代码,
for(int i=1;i<3;i++)
for(int j=1;j<5;j++){
if(j==3) continue;
System.out.println(“j=”+j+ “ i=”+i);
}
程序运行结果是:_45_。
二、编程题,写出程序源代码,并将实验结果附图(共50分)
1、 利用do…while循环,计算1!+2!+3!+…+100!(15分)
public static void main(String[] args) {
//后面数值太大 int 已经接收不了
int i = 0;
int j;
int sum = 0;
do {
i++;
System.out.println(“–” + i + “–“);
j = i;
int temp = 1;
do {
temp *= j;
System.out.print(j);
if (j > 1) {
System.out.print(“*”);
}
2、 输入一行字符,分别统计其中的英文字母、空格、数字和其他字符的个数(15分)
#include <stdio.h>
void main ()
{char x;
printf (“请输入一串字符\n”);
//scanf(“%c”,&x); 这一行应该去掉
int letter=0,blank=0,number=0,other=0;
while((x=getchar( ))!=’\n’)
{
if(‘a'<=x&&x<=’z’||’A'<=x&&x<=’Z’)
letter++;
else if(x==’ ‘)
blank++;
else if(‘0′<=x&&x<=’9’)
number++;
else
other++;
}
3、 使用循环嵌套,编写一个输出如下图形的程序(20分)
*
* *
* * *
* * * *
* * * * *
public class CommonTest
{
public static void main(String[] args)
{
int i,j,k;
//外层循环控制层数
for(i=0;i<5;i++)
{
//根据外层行号,输出星号左边空格
for(j=1;j<=5-i;j++)
System.out.print(” “);
//根据外层行号,输出星号个数
for(k=0;k<=i;k++)
System.out.printf(“*”);
//一行结束,换行
System.out.printf(“\n”);
}
}
}