资源描述
-第2学期
Java程序设计 作业
1.简答题
(1)public class Variables {
static String hello = "Hello,"; // 办法外声明变量是成员变量
public static void main(String args[]) { // 办法定义中声明变量是参数变量
String name = "Bill"; // 办法内声明变量是局部变量
System.out.println(hello + name + "!");
// 可以引用成员变量、办法参数变量和已经声明过局部变量
}
}
什么是局部变量和成员变量?Hello和name属于什么变量?她们作用范畴,请结合程序进行阐明?
答:
局部变量:
(2) import java.util.*;
public class AbsoluteIfElse {
public static void main(String[] args) {
int i;
Scanner scanner=new Scanner(System.in);
System.out.println("请用键盘输入一种整数,然后单击回车键:");
i=scanner.nextInt();
if (i>=0) System.out.println("这个整数绝对值是:"+i);
else { //用一对花括号构成语句块
i=-i;
System.out.println("这个整数绝对值是:"+i);
}
}
}
程序运营成果是什么?
请用键盘输入一种整数,然后单击回车键:
-65
这个整数绝对值是:65
(3)public class BooleanExpression {
public static void main(String[] args) {
int i,j;
float f;
boolean b;
i=1; j=3; f=1.2f;
b=i==j; System.out.println("b="+b); //关系运算符优先级高于赋值运算符
b=i<=f; System.out.println("b="+b);
b=(i<=f)&&(f<=j); System.out.println("b="+b);
b=!((i>f)||(f>j)); System.out.println("b="+b);
b=(i<=f)||(f<=j); System.out.println("b="+b);
}
}
程序运营成果是什么?
b=false
b=true
b=true
b=true
b=true
(4)public class Test7 {
public static void main(String[ ] args) {
int sum=0;
for(int i=1;i<=10;i++) {
sum=sum+i;
}
System.out.println("1~10之间所有数之和为:"+sum);
}
}
程序运营成果是什么?
1~10之间所有数之和为:55
(5) import java.util.Scanner;
public class CheckTest{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.print("请输入一种整数:");
int num = sc.nextInt() ;
if(num % 5 == 0 && num % 6 == 0){
System.out.println( num + " 能被5和6同步整除。") ;
}
if(num % 5 == 0 || num % 6 == 0){
System.out.println( num + " 能被5或6整除。") ;
}
if(num % 5 == 0 ^ num % 6 == 0){
System.out.println( num + " 能只被5或只被6整除。") ;
}
}
程序运营成果是什么?
请输入一种整数:
10
10 能被5或6整除。
10 能只被5或只被6整除。
(6) import java.util.Scanner;
public class ScoreGrade{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.print("请输入成绩:");
double score = sc.nextDouble() ;
String grade = "";
if(score >100 || score < 0){
System.out.println("输入成绩不对的。");
System.exit(0); // 结束程序运营
}else if(score >=90){
grade = "先进";
}else if(score >=80){
grade = "良好";
}else if(score >=70){
grade = "中档";
}else if(score >=60){
grade = "及格";
}else{
grade = "不及格";
}
System.out.println("你成绩为:" + grade);
}
}
程序运营成果是什么?
请输入成绩:45
你成绩为:不及格
请输入成绩:98
你成绩为:先进
请输入成绩:63
你成绩为:及格
2设计题
(1)规定:设计一种程序,规定一次只能输入一种学生学号、姓名和成绩,然后可以显示该学生学号、姓名、成绩信息,操作过程如下:
(1)界面1
---------------------------------------
* *
欢迎进入学生成绩管理系统
* *
---------------------------------------
请选取您操作:
1.录入学生成绩信息;
2.显示学生成绩信息;
0.退出;
请输入数字选项(0-2):
(2)选取数据1,开始录入学生学号、姓名和成绩(只能输入一种学生基本信息):
请输入数字选项(0-2):
1
请输入学号:
001
请输入学生姓名:
zhangsan
请输入成绩:
88
请选取您操作:
1.录入学生成绩信息;
2.显示学生成绩信息;
0.退出;
请输入数字选项(0-2):
(3)输入2,显示学生成绩:
2
学生学号信息如下:001
学生姓名信息如下:zhangsan
学生成绩信息如下:88
您选取了显示所有学生成绩信息。
请选取您操作:
1.录入学生成绩信息;
2.显示学生成绩信息;
0.退出;
请输入数字选项(0-2):
(4)对于选取操作输入错误解决:
例如,输入4后
请选取您操作:
1.录入学生成绩信息;
2.显示学生成绩信息;
0.退出;
请输入数字选项(0-2):
4
输入错误,请重新输入!
请选取您操作:
1.录入学生成绩信息;
2.显示学生成绩信息;
0.退出;
请输入数字选项(0-2):
(5)最后输入0,退出该程序。
注:去年考题
代码如下:
public class Testgrade {
public static void main(String[] args) {
int select;
select = 1;
String xuehao = "";
String name = "";
int chengji = 0;
Scanner sc = new Scanner(System.in);
System.out.println();
System.out.println(" ---------------------------------------");
System.out.println(" * *");
System.out.println(" 欢迎进入学生成绩管理系统 ");
System.out.println(" * *");
System.out.println(" ---------------------------------------");
while(true)
{
System.out.println( );
System.out.println(" 请选取您操作:");
System.out.println(" 1.录入学生成绩信息;");
System.out.println(" 2.显示学生成绩信息;");
System.out.println(" 0.退出;");
System.out.println(" 请输入数字选项(0-2): ");
select =sc.nextInt();
System.out.println();
//判断输入,0退出
if(select>=0 && select<=2)
{
switch(select)
{
case 1:
System.out.println(" 请输入学号:");
xuehao = sc.next();
System.out.println();
System.out.println(" 请输入学生姓名:");
name = sc.next();
System.out.println();
System.out.println(" 请输入成绩:");
chengji =sc.nextInt();
System.out.println();
break;
case 2:
System.out.println(" 学生学号信息如下:"+xuehao);
System.out.println(" 学生姓名信息如下:"+name);
System.out.println(" 学生成绩信息如下:"+chengji);
System.out.println("您选取了显示所有学生成绩信息。");
break;
case 0:
System.exit(0);
}
}
else
{
System.out.println("输入错误,请重新输入!");
continue;
}
}
}
}
(2)编写一种程序,实现计算1 + 2 + 3 + …… + nn项和功能,n由键盘输入与控制
Scanner sc = new Scanner(System.in);
System.out.println("求1-n和,请输入n值:");
int sum = 0;
int n = sc.nextInt();
for(int i = 1;i<=n;i++){
sum += i;
}
System.out.println("1~n和:"+sum);
(3) 请输入三角形底和高,计算该三角形面积。
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入三角形底:");
double di = sc.nextDouble();
System.out.println("请输入三角形高:");
double gao = sc.nextDouble();
double mj = (di *gao)/2;
System.out.println("三角形面积是:"+ mj);
}
(4)编写一种程序,计算矩形面积
Scanner sc = new Scanner(System.in);
System.out.println("请输矩形底:");
double di = sc.nextDouble();
System.out.println("请输入矩形高:");
double gao = sc.nextDouble();
double mj = di *gao;
System.out.println("矩形面积是:"+ mj);
(5)编写一种程序,计算圆面积
Scanner sc = new Scanner(System.in);
System.out.println("请输圆半径:");
double sr = sc.nextDouble();
double pai = 3.1415926;
double mj =pai*(sr*sr);
System.out.println("圆面积是:"+ mj);
(6)计算平面空间距离计算公式分别是经sqrt(x*x+y*y) 和sqrt(x*x+y*y+z*z)
(7)已知一元二次方程 ax2 + bx + c = 0,其中a=2,b=7,c=5。请编写程序,计算出两个实根值。程序保存为ExpTest.java。
提示:求根公式:
计算x平方根,可调用办法:Math.sqrt(x) 来完毕。
(8)已知圆半径为15,编写程序分别计算圆周长、面积和体积,并显示计算成果。程序保存为ExpTest3.java
(9)设计一种程序,用于判断某个月份天数。程序保存为ExpTest4.java。
(10)已知函数为 y = x ; 0≤x≤1
3x2+2x+1 ; x>1
编写程序,依照x值,计算出该函数y值。程序保存为ExpTest5.java
(11)某商品每公斤价格13.20,如果顾客购买100公斤及以上价格可以打9折;如果购买50公斤及以上100公斤如下,价格打9.5折。请编写程序,计算在不同购买重量时顾客应当付金额。程序保存为ExpTest6.java
(12)编写程序,求 值。程序保存为Expdemo1.java
(13)编写程序,显示如下乘法表:程序保存为Expdemo2.java
1 1*1= 1 1*2= 2 1*3= 3 …… 1*8= 8 1*9 =9
2 2*2= 4 2*3= 6 2*4= 8 …… 2*9=18
……
8 8*8=64 8*9=72
9 9*9=81
(14)使用循环程序完毕如下图形输出,程序保存为Expdemo3.java
*
***
*****
*******
*********
package aaa;
public class ggg {
public static void main(String[] args) {
int size=11;
if(size%2==0){
size++;
}
for(int i=0;i<size/2;i++){
for(int j=size/2;j>i+1;j--){
System.out.print(" ");
}
for(int j=0;j<2*i+1;j++){
System.out.print("*");
}
System.out.println("");
}
}
}
3选取题
(1)Java运营平台涉及三个版本,请选取对的三项:( )
A. Java EE B. Java ME
C. Java SE D. Java 2E
(2)public static void main办法参数描述是:( )
A. String args[] B. String[] args
C. Strings args[] D. String args
(3)编译Java Application源文献将产生相应字节码文献,扩展名为( )
A. .java B. .class
C. .html D. .exe
(4)从下面选项中,选取三个有效标示符:( )
A. IDoLikeTheLongNameClass B. $byte
C. const D. _ok
E. 3_case
(5) 下面哪一项在java中是非法标记符?( )
A. $user
B. point
C. You&me
D. _endline
(6) 下列不属于Java保存字是:( )
A. sizeof
B. super
C. abstract
D. break
(7)下面哪些java语句会导致无限循环( )。
I、 while (true) i = 0;
II、 while (false) i = 1;
III、 while (!false) i = 0;
A、仅仅III
B、I 和III
C、仅仅I
D、I,II 和III
(8)下列整型数据类型中,需要内存空间至少是 ( )。
A. short B. long
C. int D. byte
(9)下面代码执行后,对的输出成果是:()
public class Example {
public static void main(String args[]) {
int l = 0;
do {
System.out.println("Doing it for l is:" + l);
} while (--l > 0);
System.out.println("Finish");
}
}
A. Doing it for l is 3
B. Doing it for l is 1
C. Doing it for l is 2
D. Doing it for l is 0
E. Doing it for l is ?C1
F. Finish
(10) 若有定义 int a=1,b=2;那么表达式(a++)+(++b) 值是:( )
A. 3 B. 4
C. 5 D. 6
(11) 若有定义 int a=9,b=6;那么a>b值是:( )
A. 0 B. 1
C. false D. true
(12) 假定有变量定义:int k=7,x=12;那么能使值为3表达式是:()
A. x%=(k%=5) B. x%=(k-k%5)
C. x%=k-k%5 D. (x%=k)-(k%=5)
(13)设 x = 1 ,y = 2 ,z = 3,则表达式 y+=z--/++x 值是( )
A. 3 B. 3.5
C. 4 D. 5
(14)作为Java应用程序入口main办法,其声明格式是( )
A.public static int main(String args[]) B.public static void main(String args[])
C.public void main(String args[]) D.public int main(String args[])
(15)下面命令对的是()
A.java AppFirst.java B.java AppFirst
C.java appfirst.class D.javac AppFirst
(16)JDK安装完毕后,重要命令如javac、java等,都存储在根目录( )文献夹下。
A.bin B.jre C.include D.doc
(17)Java语言是一种( )语言。
A.机器 B.汇编 C.面向过程 D.面向对象
(18)Java程序最基本构成单位是( )。
A.函数 B.过程 C.变量 D.类
1.下面这些标记符哪个是错误( )
A.Javaworld B._sum C.2Java Program D.$abc
2.下列哪一组运算符优先级顺序是从高到低排列( )
A.|、&、! B.&、^、|| C.!、%、++ D.<、<<、++
3、下面哪个赋值语句不会产生编译错误( )
A.char a=’abc’; B.byte b=152; C.float c=2.0; D.double d=2.0;
4.下面哪个单词是Java语言核心字( )
A.False B.FOR C.For D.for
5.执行下面程序后,哪个结论是对的( )
int a,b,c;
a=1;b=3;c=(a+b>3 ?++a :b++);
A.a值为2,b值为3,c值为1 B.a值为2,b值为4,c值为2
C.a值为2,b值为4,c值为1 D.a值为2,b值为3,c值为2
6.设各个变量定义如下,哪些选项值为true ( )
int a=3,b=3;
boolean flag=true;
A.++a = = b B.++a= = b++ C.(++a = = b) || flag D.(++a= =b) & flag
7.表达式(int)6.5/7.5*3值类型为( )
A.short B.int C.double D.float
8.设a,b,x,y,z均为int型变量,并已赋值,下列表达式成果属于非逻辑值是()
A.x>y && b<a B.-z>x-y C.y = = ++x D.y+x*x++
9.下面语句输出成果为( )
Syste.out.println(5^2);
A.6 B.7 C.10 D.25
10.对下面语句执行完后对的说法是:( )
int c=’c’/3;
System.out.println(c);
A.输出成果为21 B.输出成果为22 C.输出成果为32 D.输出成果为33
11.如下选项中变量a已定义类型,合法赋值语句为( )
A.a = int(y); B.a= =1; C.a = a+1=3; D.++a;
12.执行下列程序段后,ch,x,y值对的是:( )
int x=3,y=4;
boolean ch;
ch=x<y || ++x = = --y;
A.true,3,4 B.true,4,3 C.false,3,4 D.false,4,3
13.下列标记符中,对的是 。
A、1_Back B、$_Money C、$-money D、2-Forward
14.既有一种int类型整数和一种double类型浮点数,当它们之间做了加法运算之后,得到成果类型应当是 。
A、int类型 B、double类型 C、float类型 D、long类型
15、如下程序运营成果为 。
public class A {
public static void main(String a[]) {
int x = 2,y = 5;
String z = "5";
System.out.println(x + y);
System.out.println(x + z + "x+z");
System.out.println("x+y=" + x + y);
System.out.println("x+z=" + (x + z));
}
}
A.7 B.7 C.25 D.7
25x+z 7x+z 25x+z 25x+z
x+y=25 x+y=25 x+y=7 x+y=25
x+z=25 x+z=7 x+z=25 x+z=7
16、设有定义int a=12;则执行a*=12;语句后,a值为: 。
A.144 B.12 C.24 D.0
17、下列标记符中,合法一种是 。
A.$#@!$ B.$咱们$ C.$22$ D.2$$2
18、执行下列程序段后,b,x,y值分别是 。
int x=6,y=8;
boolean b;
b=x>y&&++x==--y;
A.true ,6,8 B.false ,6,8 C.e,7,7 D.false,7,7
19、下列程序运营成果是 。
public class A {
public static void main(String args[]) {
int x = 7%3;
while(x){
x--;
}
System.out.println(x);
}
}
A.0 B.1 C.true D.编译错误
1.下面程序片段输出是什么( )
int a=3,b=1;
if(a=b) Syste.out.println(“a=”+a);
A.a=1 B.a=3 C.编译错误,没有输出 D.正常运营,但没有输出
2.下面语句执行后,x值为( )
int a=4,b=5,x=3;
if(++a==b) x=x*a;
A.3 B.12 C.15 D.20
3.请看下面程序代码:
if(x<0) {Syste.out.println(“first”);}
else if(x<20) {Syste.out.println(“second”);}
else {Syste.out.println(“third”);}
当程序输出“second”时,x范畴是( )
A.x<=0 B.x<20 && x>=0 C.x>0 D.x>=20
4.请看下面程序代码:
switch(n){
case 0:Syste.out.println(“first”);
case 1:
case 2:Syste.out.println(“second”);break;
default:Syste.out.println(“end”);
}
当n为什么值时,程序段将输出字符串”second”( )
A. 0 B.1 C.2 D.以上都可以
5.下列语句执行后,j值是( )
int j=3,i=3;
while(--i!=i/j) j=j+2;
A. 4 B.5 C.6 D.7
6.下列语句执行后,x值是()
int x=2 ;
do{x+=x ;}while(x<17);
A. 4 B.16 C.32 D.256
7.执行下列语句后,i、j值是( )
int i=1,j=8;
do{
if(i++>--j)
continue;
}while(i<4);
A. i=4,j=5 B.i=5,j=4 C.i=5,j=5 D.i=5,j=6
8.下列语句执行后,k值是( )
int j=4,i,k=10;
for(i=2;i!=j;i++) k=k-i;
A. 4 B.5 C.6 D.7
9.下列语句执行后,c值是( )
char c=’\0’;
for(c=’a’;c<’z’;c+=3){
if(c>=’e’) break;
}
A. ‘e’ B.’f’ C.’g’ D.’h’
10.若变量都已经对的阐明,则如下程序段输出为( )
a=10;b=50;c=30;
if(a>b) a=b;b=c;
c=a;
System.out.println(“a=”+a+” b=”+b+” c=”+c);
A.a=10 b=50 c=10 B.a=10 b=30 c=10
C.a=50 b=30 c=10 D.a=50 b=30 c=30
11.如下程序段输出是( )
int x=1,y=0,a=0,b=0;
i=(--a==b++)?- -a :++b;
j=a++;k=b;
System.out.println(“i=”+i+” ,j=”+j+” ,k=”+k); 2 -1 2
A.i=2,j=1,k=3 B.i=1,j=1,k=2 C.i=4,j=2,k=4 D.i=2,j=-1,k=2
12.如下程序输出是( )
int x=1,y=0,a=0,b=0;
switch(x){
case 1:
switch(y){
case 0:a++;break;
case 1:b++;break;
}
case 2:
a++;break;
case 3:
a++;b++;
}
System.out.println(“a=”+a+”,b=”+b); 2 0
A.a=1,b=0 B.a=2,b=0 C.a=1,b=1 D.a=2,b=2
13.如下程序段输出是( )
int i=0,j=0,a=6;
if ((++i>0) || (++j>0 )) a++ :
System.out.println(“i=”+i+” ,j=”+j+” ,a=”+a);
A.i=0,j=0,a=6 B.i=1,j=1,a=7 C.i=1,j=0,a=7 D.i=0,j=1,a=7
14、下列程序运营成果是 。
public class A{
public static void main(String args[]){
char c = 'd';
for (int i = 1;i <= 4;i++) {
switch (i){
case 1:
c = 'a';
System.out.print(c);
break;
case 2:
c = 'b';
System.out.print(c);
break;
case 3:
c = 'c';
System.out.print(c);
default:
System.out.print("!");
}
}
}
}
A.! B.dbc! C.abc! D.abc!!
2-1 Java语言所用字符集中字符是 位。
A. 8
B. 16
C. 32
D.
展开阅读全文