if(flag==true){ } elsereturn false; return true;
if(ID.equals(customer_Id[i]) && }
id=customer_Id[i]; pwd=customer_Pwd[i]; name=customer_Name[i]; mony=customer_Mony[i]; flag=true;
return this.Pwd;
PWD.equals(customer_Pwd[i])){
class Menu{
public static void menu(){ System.out.println(\"主菜单\"); System.out.println(\"1、取款服务\"); System.out.println(\"2、修改密码\"); System.out.println(\"3、存款服务\"); System.out.println(\"4、转账服务 \"); System.out.println(\"5、查询余额 \"); System.out.println(\"6、退出\");
Scanner scanner = new Scanner(System.in); int a = scanner.nextInt(); switch(a){ case 1: DrawMony(); break; case 2:
ChangePwd(); break; case 3:
SaveMony(); break;
case 4:
TransferMony(); break; case 5:
CheckMony(); break; case 6:
break;
}
}
public static void DrawMony(){ System.out.println(\" 请确定取款金额 \"); System.out.println(\"1-->100 1000<--4\"); System.out.println(\"2-->300 5000<--5\");
System.out.println(\"3-->500 金额<--6\"); System.out.println(\"\");
Scanner scanner = new Scanner(System.in); int m=scanner.nextInt(); switch(m){
case 1:
其它
if(Customer.mony-100<0){ } else{ } break;
if(Customer.mony-300<0){ } else{
Customer.mony=Customer.mony-300; System.out.println(\"取款成功!\");
System.out.println(\"账户余额为:\"+Customer.mony); System.out.println();
System.out.println(\"是否继续取款?\");
System.out.println(\"0、是 1、否\"); int c = scanner.nextInt(); if(c==0){ } else{
System.out.println(); System.out.println(); DrawMony();
System.out.println(\"余额不足,请重新选择!\"); System.out.println(); DrawMony();
Customer.mony=Customer.mony-100; System.out.println(\"取款成功!\");
System.out.println(\"账户余额为:\"+Customer.mony); System.out.println();
System.out.println(\"是否继续取款?\");
System.out.println(\"0、是 1、否\"); int c = scanner.nextInt(); if(c==0){ } else{ }
System.out.println();
System.out.println(); menu();
System.out.println(); DrawMony();
System.out.println(\"余额不足,请重新选择!\"); System.out.println(); DrawMony();
case 2:
}
}
menu();
System.out.println();
break;
if(Customer.mony-500<0){ } else{ } break;
if(Customer.mony-1000<0){ } else{
Customer.mony=Customer.mony-1000; System.out.println(\"取款成功!\");
System.out.println(\"账户余额为:\"+Customer.mony); System.out.println();
System.out.println(\"是否继续取款?\");
System.out.println(\"0、是 1、否\"); int c = scanner.nextInt();
System.out.println(\"余额不足,请重新选择!\"); System.out.println(); DrawMony();
Customer.mony=Customer.mony-500; System.out.println(\"取款成功!\");
System.out.println(\"账户余额为:\"+Customer.mony); System.out.println();
System.out.println(\"是否继续取款?\");
System.out.println(\"0、是 1、否\"); int c = scanner.nextInt(); if(c==0){ } else{ }
System.out.println();
System.out.println(); menu();
System.out.println(); DrawMony();
System.out.println(\"余额不足,请重新选择!\"); System.out.println(); DrawMony();
case 3:
case 4:
}
if(c==0){ } else{ }
System.out.println();
System.out.println(); menu();
System.out.println(); DrawMony();
break;
if(Customer.mony-5000<0){ } else{ } break;
System.out.print(\"请输入取款金额:\"); int mony = scanner.nextInt(); if(Customer.mony-mony<0){ }
System.out.println(\"余额不足,请重新输入!\"); System.out.println(\"\"); DrawMony();
Customer.mony=Customer.mony-5000; System.out.println(\"取款成功!\");
System.out.println(\"账户余额为:\"+Customer.mony); System.out.println();
System.out.println(\"是否继续取款?\");
System.out.println(\"0、是 1、否\"); int c = scanner.nextInt(); if(c==0){ } else{ }
System.out.println();
System.out.println(); menu();
System.out.println(); DrawMony();
System.out.println(\"余额不足,请重新选择!\"); System.out.println(); DrawMony();
case 5:
case 6:
}
else{ } break;
Customer.mony=Customer.mony-mony; System.out.println(\"取款成功!\");
System.out.println(\"账户余额为:\"+Customer.mony); System.out.println();
System.out.println(\"是否继续取款?\");
System.out.println(\"0、是 1、否\"); int c = scanner.nextInt(); if(c==0){ } else{ }
System.out.println();
System.out.println(); menu();
System.out.println(); DrawMony();
}
public static void ChangePwd(){
Scanner scanner = new Scanner(System.in); System.out.print(\"请输入新密码:\"); String pwd =scanner.nextLine(); System.out.print(\"请再次输入:\"); String pwd1 =scanner.nextLine();
if(pwd.equals(pwd1)){ } else{
System.out.println(\"两次输入密码不一致!\"); System.out.println(); ChangePwd(); Customer.pwd=pwd;
System.out.println(\"密码修改成功!\");
System.out.println(\"10秒后自动返回主界面!\"); System.out.println(); try{ }
catch(InterruptedException e){}
Thread.sleep(10000); menu();
}
}
public static void SaveMony(){ }
public static void TransferMony(){
Scanner scanner = new Scanner(System.in); System.out.print(\"请输入账号:\"); int a= scanner.nextInt(); System.out.print(\"请在此输入:\"); int b=scanner.nextInt();
System.out.print(\"请输入转账金额:\"); int mony=scanner.nextInt(); if(a==b){
if(Customer.mony-mony>0){
Customer.mony=Customer.mony-mony; System.out.println(\"转账成功!\");
Scanner scanner = new Scanner(System.in); System.out.print(\"请输入存款金额:\"); int mony=scanner.nextInt(); if (mony>0 && mony%100==0){ } else{ }
System.out.println(\"存款金额必须为100的整数倍!\"); System.out.println(); SaveMony();
Customer.mony=Customer.mony+mony; System.out.println(\"存款成功!\");
System.out.println(\"账户余额:\"+Customer.mony); System.out.println(\"\");
System.out.println(\"是否继续存款?\");
System.out.println(\"0、是 1、否\"); int c = scanner.nextInt(); if(c==0){ } else{ }
System.out.println();
System.out.println(); menu();
System.out.println(); SaveMony();
}
}
}
}
System.out.println(\"账户余额:\"+Customer.mony); System.out.println();
System.out.println(\"是否继续转账?\");
System.out.println(\"0、是 1、否\"); int c = scanner.nextInt(); if(c==0){ } else{ }
System.out.println(); menu();
System.out.println(); TransferMony();
else{ }
System.out.println(\"余额不足,请重新输入!\"); System.out.println(); TransferMony();
else{ }
System.out.println(\"两次输入账号不一致,请重新输入!\"); System.out.println(); TransferMony();
public static void CheckMony(){ }
Scanner scanner = new Scanner(System.in); System.out.println(\"用户名:\"+Customer.name); System.out.println(\"用户ID:\"+Customer.id); System.out.println(\"账户余额:\"+Customer.mony); System.out.println(\"返回主菜单\"); int a=scanner.nextInt(); if(a==0){ } else{ }
System.out.println(); menu();
System.out.println(); menu();
16、 有哺乳动物类mammal,将其作为父类,从其派生出子类猫cat和子类狗dog,基
类中有方法speak()。
class mammal{ }
class dog extends mammal{ }
class cat extends mammal{ }
public class Java1_16 {
public static void main(String[] args) {
mammal dog = new dog(); mammal cat = new cat();
dog.print();
dog.speak(\"汪\");
System.out.println(); cat.print(); cat.speak(\"喵\"); public cat(){
super(\"小猫\",3,\"猫\"); }
public dog(){
super(\"小狗\",2,\"狗\"); }
String name,kind; int age;
public mammal(String n, int a, String k){ }
public void speak(String s){
System.out.println(\"叫声为:\"+s); }
public void print(){
System.out.println(\"名字为:\"+this.name); System.out.println(\"年龄为:\"+this.age); this.name=n; this.age=a; this.kind=k;
System.out.println(\"种类为:\"+this.kind); }
}
}
17、
}
求100之内的素数
public class Java1_17 {
public static void main(String[] args) { }
boolean flag = false;
System.out.print(\"100以内的素数有:2 3 \"); for(int i=3;i<=100;i+=2){ }
for(int j=2;j<=Math.sqrt(i);j++){ }
if(i%j==0){ }
System.out.print(i+\" \");
flag=false; break;} flag=true;
else
if(flag==true){
18、
对10个数进行排序
import java.util.Scanner; public class Java1_18 {
public static void main(String[] args) {
int number[] = new int[10];
Scanner scanner = new Scanner(System.in); System.out.print(\"请输入10个数:\"); for(int i=0;ifor(int i=0;ifor(int i=0;iSystem.out.print(number[i]+\" \"); for(int j=0;jif(number[i]>number[j]){ }int temp = number[j]; number[j]=number[i]; number[i]=temp;
number[i]=scanner.nextInt();
}
}
}
19、 从键盘上输入10个整数,并将其放入一个一维数组中,然后将其前5个元素与后
5个元素对换,即:第1个元素与第10个元素互换,第2个元素与第9个元素互换…第5个元素与第6个元素互换。分别输出数组原来各元素的值和对换后各元素的值。
import java.util.Scanner; public class Java1_19 { }
public static void main(String[] args) { }
int number[]=new int[10]; int b=0;
Scanner scanner = new Scanner(System.in); System.out.print(\"请输入10个整数:\"); for(int i=0;ifor(int i=0;iSystem.out.print(\"对换后顺序为:\"); for(int i=0;iSystem.out.print(number[i]+\" \"); int temp=number[i]; number[i]=number[i+9-b]; number[i+9-b]=temp; b+=2;number[i]=scanner.nextInt();
20、 设计一个圆类,将圆的位置(圆心坐标和半径)作为属性(提供任意圆的设置),并
能计算圆的面积。
class Point{
float x,y;
public Point(float a, float b){ }
public void setX(float a){ }
public void setY(float b){ }
this.y=b; this.x=a; this.x=a; this.y=b;
}
public float getX(){ }
public float getY(){ }
return this.y; return this.x;
class Circle{
Point point = new Point(0,0); float radius;
public Circle(Point p,float r){ }
public void setRadius(float r){ }
public float getRadius(){ }
public void Area(float radius){
double area=Math.PI*radius*radius; System.out.println(\"圆面积为:\"+area); }
public void Perimer(float radius){
double perimer=2*Math.PI*radius;
System.out.println(\"圆周长为:\"+perimer); }
public void print(){
System.out.println(\"圆点为:return this.radius; this.radius=r; this.point=p; this.radius=r;
\"+\"(\"+this.point.x+\+this.point.y+\")\"+\" 半径为:\"+this.radius); } }
public class Java1_20 { }
public static void main(String[] args) { }
Point point = new Point(3,4);
Circle circle = new Circle(point, 3); circle.print();
circle.Area(circle.radius); circle.Perimer(circle.radius);
21、 设计一个Course类,它代表学校中的一门课程。按照实际情况将这门课程的相关
信息组织成它的属性,并定义必要的相应的方法。
class Course {
String cName; int cHour; double cCredit; String cRechel;
public Course(String name,int hour,double credit,String rechel){ //
构造方法Course() this.cName=name; }
public class Java1_21 {
public static void main(String[] args) {
String classes1=\"医智09(1)班\"+\"、\"+\"医智09(2)班\"; Course course=new Course(\"高等数学\",72,7.5,\"郭\"); course.cprint();
course.classes(classes1); course.sNumber(130); }
public void classes(String classes){ //上课班级 System.out.println(\"上课班级为:\"+classes); }
public void sNumber(int number){ //上课人数 System.out.println(\"上课人数为:\"+number); }
public void brvbar(boolean brvbar){ //是否必修 if(brvbar=true)
System.out.println(\"该课程为必修!\"); else
System.out.println(\"该课程为选修!\"); this.cHour=hour; this.cCredit=credit; this.cRechel=rechel;
} }
public void cprint(){ //课程信息打印
System.out.println(\"课程信息:\");
System.out.println(\"课程名称:\"+this.cName); System.out.println(\"所需课时:\"+this.cHour); System.out.println(\"所含学分:\"+this.cCredit); System.out.println(\"授课老师:\"+this.cRechel); System.out.println();
}
}
course.brvbar(true);
22、 设计并实现一个Vehicle类及其子类,它们代表主要的交通工具,定义必要的属性
信息和方法
23、 设计并实现一个MyGraphic类及其子类,它们代表一些基本的图形,这些图形包
括:矩形、三角形、圆、椭圆等。试给出能描述这些图形所必需的属性及必要的方法。
24、 先在一个包中编写第一类ClassA,要求写该类中具有四种不同访问权限的成员,
再在另一个包中写第二个类ClassB,并在该类中编写一个方法访问第一个类的成员。
25、 设计一个汽车类Multiplication,在其中定义三个同名的mul方法:第一个方法是计
算两个整数的积;第二个方法是计算两个浮点数的积;第三个方法是计算三个浮点数的积。
class Multiplication{ }
public class Java1_25 { }
public static void main(String[] args) { }
Multiplication test = new Multiplication(); test.mul(3, 4); test.mul(2.3, 3); test.mul(3, 4, 5);
public void mul(int a, int b){ }
public void mul(double a, double b){ }
public void mul(double a, double b, double c){ }
double m = a*b*c;
System.out.println(a+\"*\"+b+\"*\"+c+\"=\"+m); float m = (float)(a*b);
System.out.println(a+\"*\"+b+\"=\"+m); int m = a*b;
System.out.println(a+\"*\"+b+\"=\"+m);
26、 使用继承和接口技术,编写一个程序,求解几何图形(如直线、三角形、矩形、圆
和多边形)的周长和面积。
进阶题:
27、 随便输入一段字符串,把出现次数最多的打印出来,如:aabbbbbbbbbcccdffff,就把b
打印出来,用java代码实现
import java.util.Scanner; public class Java2_1 { }
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); System.out.print(\"请输入一段字符串:\"); String str = scanner.nextLine(); char ch[] =str.toCharArray(); int number[] = new int[ch.length]; for(int i=0;iint max=number[0],k=0;for(int i=0;iif(number[i]>max){ }max=number[i]; k=i; int count=0;
for(int j=0;jnumber[i]=count;if(ch[i]==ch[j])
count++;
System.out.println(\"出现次数最多的字符为:\"+ch[k]); }
28、
有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
public class Java2_2 {
public static void main(String[] args) {
int count=0;
for(int i=1;i<5;i++){
for(int j=1;j<5;j++){
for(int k=1;k<5;k++){
if(i!=j && i!=k && j!=k){
count++;
}
}
}
}
}
}
System.out.println(count);
29、
输入某年某月某日,判断这一天是这一年的第几天?
import java.util.Scanner; public class Java2_3 {
public static void main(String[] args) {
int year, month, day, days = 0; int d = 0, e;
Scanner scanner = new Scanner(System.in); do{
e=0;
System.out.print(\"请输入年:\"); year = scanner.nextInt(); System.out.print(\"请输入月:\"); month = scanner.nextInt(); System.out.print(\"请输入天:\"); day = scanner.nextInt();
if(year<=0 || month<=0 || month>12 || day<=0 || day>31){ }
System.out.println(\"输入错误,请重新输入!\"); e=1;
}while(e==1);
for(int i=1;iswitch(i){case 1: case 3: case 5: case 7: case 8: case 10: case 12:
days=31; break;
case 4: case 6: case 9: case 11:
days=30;
}
}
break;
if((year%400==0) || (year%4==0 && year%100!=0)){ } else{ } break;
days=28; days=29;
case 2:
d+=days;
System.out.println(year + \"-\" + month + \"-\" + day + \"是这年的第\"
+ (d+day) + \"天。\"); } }
30、 两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签
决定比赛名单。有人向 队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
public class Java2_4 {
public static void main(String[] args) {
char jia[] = {'a','b','c'}; char yi[] = {'x','y','z'}; for(int i=0;ifor(int j=0;jif(jia[i]=='a' && yi[j]=='x'){ }else if(jia[i]=='a' && yi[j]=='y'){ }
else if((jia[i]=='c' && yi[j]=='x') || (jia[i]=='c' && }
else if((jia[i]=='b' && yi[j]=='y') || (jia[i]=='b' && } else
System.out.println(jia[i]+\" VS \"+yi[j]); continue; continue; continue; continue;
yi[j]=='z')){
yi[j]=='z')){
}
}
31、 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3
的人退出圈子,问最后留下的是原来第几号的那位。
import java.util.Scanner; public class Java2_5 { }
public static void main(String[] args) { }
Scanner scanner = new Scanner(System.in); System.out.print(\"请输入人数:\"); int n = scanner.nextInt(); boolean flag[] = new boolean[n]; for(int i=0;iint left = n, count = 0, index = 0; while(left>1){ }for(int i=0;iif(flag[i]==true){System.out.println(\"第\"+(i+1)+\"位的人留下来了!\"); }
if(flag[index]==true){ }
index++; if(index==n){ }
index = 0; count++; if(count==3){ }
count = 0;
flag[index] = false; left--;
flag[i] = true;
32、 哥德巴赫猜想是说任何一个大于2的偶数都能表示为两个素数之和。请编写一个
Java程序,验证1~100内哥德巴赫猜想的正确性,也就是近似证明哥德巴赫猜想。
public class Java2_6 {
public static void main(String[] args) {
boolean flag = false; int number[] = new int[25];
}
}
number[0]=2;number[1]=3; int a=2;
System.out.print(\"100以内的素数有:\"); for(int i=3;i<=100;i+=2){ }
for(int i=0;iSystem.out.println(); for(int i=2;i<=100;i+=2){ }for(int j=0;jfor(int k=j+1;k}if(i==number[j]+number[k]){
System.out.print(number[i]+\" \"); for(int j=2;j<=Math.sqrt(i);j++){ }
if(i%j==0){ } else }
number[a]=i;a++;
flag=true; flag=false; break;
if(flag==true){
System.out.println(i+\"=\"+number[j]+\"+\"+number[k]);
33、 一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与
千位相同
import java.util.Scanner; public class Java2_7 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); int number; do{
System.out.print(\"请输入一个五位数:\");
}
number = scanner.nextInt();
}while(number<10000 || number>99999);
char ch[]=String.valueOf(number).toCharArray(); if(ch[0]==ch[4] && ch[1]==ch[3]){
System.out.println(number+\"是回文数!\"); } else
System.out.println(number+\"不是回文数!\");
}
34、 爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,每步上2阶,最后剩1
阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后一阶也不剩。请问该阶梯至少有多少阶。编写一个Java程序解决该问题。
public class Java2_8 { }
public static void main(String[] args) { }
int n=7;
while(!(n%2==1 && n%3==2 && n%5==4 && n%6==5)){ }
System.out.println(n);
n+=7;