日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java程序设计编程题目

發布時間:2024/3/24 java 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java程序设计编程题目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java程序設計編程題目

一般題:

1、 編寫一個應用程序,對程序中給定的四個double型數據求其最大值和最小值。

import java.util.*;

public class no1

{

public static void main(String args[])

{

System.out.println("input the number:");

Scanner input = new Scanner(System.in);

double[] x=new double[4];

for (int i=0;i<4;i++)

x[i]=input.nextDouble();

double max=Math.max(Math.max(x[0], x[1]), Math.max(x[2], x[3]));

double min=Math.min(Math.min(x[0], x[1]), Math.min(x[2], x[3]));

System.out.println("max:"+max+" min:"+min);

}

}

2、 一個數如果恰好等于它的因子之和,這個數就稱為“完數”。例如6的因子為1、2、3,而6=1+2+3。因此6是“完數”。編寫一個小應用程序求1000之內的所有完數

public class no2

{

public static void main(String args[])

{

int sum;

for (int i=1;i<=1000;i++)

{

sum=0;

for (int j=1;j<=i/2;j++)

{

if (i%j==0) sum+=j;

}

if (sum==i)

{

System.out.println(i);

}

}

}

}

3、 要求1000!(1000*999*998...*2*1)的值。

import java.math.BigInteger;

public class no3

{

public static void main(String args[])

{

BigInteger x = BigInteger.valueOf(1);

for(int i=2; i<=1000; i++) {

x = x.multiply(BigInteger.valueOf(i));

}

System.out.println(x);

}

}

4、 設計一個能隨機產生100個大寫英文字母的方法,在該方法中統計產生了多少個元音字母,并輸出這個數字。

import java.util.*;

public class no4

{

public static void main(String args[])

{

int a=(int)'A';

int y[]=new int[26];

int t=0;

Random r=new Random();

for (int i=0;i<100;i++)

{

t=Math.abs(r.nextInt())%26;

y[t]++;

System.out.print((char)(a+t)+" ");

}

System.out.println("");

for (int yi=0;yi<26;yi++)

{

System.out.print((char)(a+yi)+" "+y[yi]+" ");

}

}

}

5、 有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第3個月后每個月又生一對兔子,假如兔子不死,問每個月的兔子總數為多少?

public class no5

{

public static void main(String args[])

{

int a=0,b=0,c=2;

int x,y,z;

for (int i=0;i<24;i++)

{

z=a/2;

y=c;

x=a+b;

a=x;

b=y;

c=z;

System.out.println(a+b+c);

}

}

}

6、 打印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等于該數本身。例如:

153是一個"水仙花數",因為153=1的三次方+5的三次方+3的三次方。

public class no6

{

public static void main(String args[])

{

int y;

int t;

for (int x=100;x<=999;x++)

{

t=x;

y=0;

while(t>=1)

{

y+=Math.pow(t%10,3);

t/=10;

}

if (y==x) System.out.println(x);

}

}

}

7、 輸入一行字

符,分別統計出其中英文字母、空格、數字和其它字符的個數。

import java.util.Scanner;

public class no7

{

public static void main(String args[])

{

int y[]=new int[4];

char x;

Scanner input=new Scanner(System.in);

String s=input.nextLine();

int l=s.length()-1;

while(l>=0)

{

x= s.charAt(l);

if ((x-'a'>=0&&x-'a'<26) || (x-'A'>=0&&x-'A'<26))

{

y[0]++;

}

else

if (x-'0'<10&&x-'0'>0)

{

y[1]++;

}

else

if (x==' ')

{

y[2]++;

}

else

y[3]++;

l--;

}

for (int i=0;i<4;i++)

{

System.out.println(y[i]);

}

}

}

8、 一球從100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地時,共經過多少米?第10次反彈多高?

public class no8

{

public static void main(String args[])

{

dum(100,0,10);

}

public static void dum(int h,int s,int t)

{

s+=h;

h/=2;

t--;

if (t>0) dum(h,s,t);

else System.out.println(s+" "+h);

}

}

9、 企業發放的獎金根據利潤提成。利潤(I)低于或等于10萬元時,獎金可提10%;利潤高于10萬元,低于20萬 元時,低于10萬元的部分按10%提成,高于10萬元的部分,可可提成7.5%;20萬到40萬之間時,高于20萬元的部分,可提成5%;40萬到60萬之間時高于40萬元的部分,可提成3%;60萬到100萬之間時,高于60萬元的部分,可提成1.5%,高于100萬元時,超過100萬元的部分按1%提成,從鍵盤輸入當月利潤I,求應發放獎金總數?

import java.util.*;

public class no9

{

public static void main(String args[])

{

Scanner in=new Scanner(System.in);

double sum=0;

double n=in.nextInt();

if (n>100) sum=(n-100)*0.01+3.95;

if (n>60 && n<=100) sum=(n-60)*0.015+3.35;

if (n>40 && n<=60) sum=(n-40)*0.03+2.75;

if (n>20 && n<=40) sum=(n-20)*0.05+1.75;

if (n>10 && n<=20) sum=(n-10)*0.075+1;

if (n<10 && n>=0) sum=n*0.1;

System.out.println(sum);

}

}

10、 猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了一個 第二天早上又將剩 下的桃子吃掉一半,又多吃了一個。以后每天早上都吃了前一天剩下 的一半零一個。到第10天早上想再吃時,見只剩下一個桃子了。求第一天共摘了多少。

public class no10

{

public static void main(String args[])

{

peach(10,1);

}

public static void peach(int day,int num)

{

day--;

num=(num++)*2;

if (day>0) peach(day,num);

else System.out.println(num);

}

}

11、 利用遞歸方法求5!。

public class no11

{

public static void main(String args[])

{

System.out.println(foo(5));

}

public static int foo(int t)

{

if (t==0)return 1;

else return t*foo(t-1);

}

}

12、 求

一個3*3矩陣對角線元素之和.

import java.util.*;

public class no12

{

public static void main(String args[])

{

int sum=0;

int t=0;

Scanner in=new Scanner(System.in);

for (int i=0;i<3;i++)

for (int j=0;j<3;j++)

{

t=in.nextInt();

if (i==j) sum+=t;

}

System.out.println(sum);

}

}

13、 輸入數組,最大的與第一個元素交換,最小的與最后一個元素交換,輸出數組。

import java.util.*;

public class no13

{

public static void main(String args[])

{

int n=4;

int x[]=new int[100];

int max=0;

int min=0;

int t=0;

Scanner in=new Scanner(System.in);

for (int i=0;i<n;i++)

{

x[i]=in.nextInt();

if (x[i]>x[max]) max=i;

if (x[i]<x[min]) min=i;

}

t=x[0];

x[0]=x[max];

x[max]=t;

t=x[n-1];

x[n-1]=x[min];

x[min]=t;

for (int i=0;i<n;i++)

System.out.println(x[i]+" ");

}

}

14、 定義復數的類Complex并測試其功能:

  1. 復數由實部、虛部兩個部分組成,在類的定義中應包含保存這兩部分信息的內容。

2. 在類中定義構造函數,使用戶能夠在構造對象的同時為對象賦初值。

3. 在類中定義復數的加法、減法、乘法三個二元操作符來完成復數間的加、減、乘的功能。

4. 通過重載tosthing,使得Complex類的對象能夠顯示其自身信息。  

5. 通過顯示定義一個成員函數完成對象的賦值操作,使用戶能夠對Complex類的對象進行賦值。

6. 編寫一段主程序(main函數),使用戶能夠通過這段主程序輸入復數并進行復數的計算。

import java.util.*;

public class no14

{

public static void main(String args[])

{

Scanner in =new Scanner(System.in);

System.out.println("first real and image:");

Complex x=new Complex();

x.setreal(in.nextDouble());

x.setimage(in.nextDouble());

System.out.println("second real and image:");

Complex y=new Complex();

y.setreal(in.nextDouble());

y.setimage(in.nextDouble());

Complex t=new Complex(1,1);

t.copy(x);

System.out.print("add:");

x.add(y);

x.tosthing();

System.out.print("decreace:");

x.copy(t);

x.decrease(y);

x.tosthing();

System.out.print("multi:");

x.copy(t);

x.multi(y);

x.tosthing();

System.out.print("division:");

x.copy(t);

if (x.division(y))

x.tosthing();

else System.out.print("error");

}

}

class Complex

{

double real;

double image;

public Complex()

{

real=0;

image=0;

}

public Complex(double r,double i)

{

real=r;

image=i;

}

public void copy(Complex t)

{

this.real=t.real;

this.image=t.image;

}

public void add(Complex t)

{

this.real+=t.real;

this.image+=t.image;

}

public void decrease(Complex t)

{

this.real-=t.real;

this.image-=t.image;

}

public void multi(Complex t)

{

double x=this.real*t.real-this.image*t.image;

this.image=this.real*t.image+this.image*t.real;

this.real=x;

}

public boolean division(Complex t)

{

if ((Math.pow(t.real,2)+Math.pow(t.image,2))==0)return false;

double x=(this.real*t.real-this.image*t.image)/(Math.pow(t.real,2)+Math.pow(t.image,2));

this.image=(this.real*t.image+this.image*t.real)/(Math.pow(t.real,2)+Math.pow(t.image,2));

this.real=x;

return true;

}

public void setreal(double r)

{

this.real=r;

}

public void setimage(double i)

{

this.image=i;

}

public void tosthing()

{

System.out.println("("+this.real+","+this.image+")");

}

}

15、 建立一個銀行賬戶類,要求能夠存放用戶的賬號、姓名、密碼和賬戶余額等個人信息,并包含存款、取款、查詢余額和修改賬戶密碼等操作,并用此類創建對象,對象的賬號為100,姓名為Tom,密碼為11111,賬戶余額為10000。

public class no15

{

public static void main(String args[])

{

bankacount bk=new bankacount("Tom","11111",100,10000);

System.out.println("$50 in");

bk.in(50);

bk.check();

System.out.println("$100 out");

if (bk.out(100))

bk.check();

else System.out.println("error");

bk.setpsw("asd");

}

}

class bankacount

{

String name=new String();

String psw=new String();

int id =0;

int balance=0;

public bankacount(String n,String p,int o,int b)

{

this.name=n;

this.psw=p;

this.id=o;

this.balance=b;

}

public void in(int i)

{

this.balance+=i;

}

public boolean out(int i)

{

if (this.balance>=i)

this.balance-=i;

else return false;

return true;

}

public void check()

{

System.out.println("balance:"+balance);

}

public void setpsw(String i)

{

this.psw=i;

}

}

16、 有哺乳動物類mammal,將其作為父類,從其派生出子類貓cat和子類狗dog,基類中有方法speak()。

public class no16

{

public static void main(String args[])

{

cat a=new cat();

a.speak();

dog b=new dog();

b.speak();

}

}

class mammal

{

void speak(String s)

{

System.out.println(s);

}

}

class cat extends mammal

{

void speak()

{

super.speak("nyanyanya");

}

}

class dog extends mammal

{

void speak()

{

super.speak("wangwangwang");

}

}

17、 求100之內的素數

public class no17

{

public static void main(String args[])

{

System.out.println(1);

System.out.println(2);

tag: for (int i=3;i<=100;i++)

{

int t=0;

for (int j=2;j<=i/2;j++)

{

if (i % j== 0) continue tag;

}

System.out.println(i);

}

}

}

18、 對10個數進行排序

import java.util.*;

public class no18

{

public static void main(String args[])

{

int n=10;

Scanner in=new Scanner(System.in);

int x[]=new int[n];

System.out.print("input:");

for (int i=0;i<n;i++)

{

x[i]=in.nextInt();

}

for (int i=0;i<n;i++)

for (int j=0;j<n;j++)

{

if (x[i]>x[j])

{

int t=0;

t=x[i];

x[i]=x[j];

x[j]=t;

}

}

for (int i=0;i<n;i++)

{

System.out.print(x[i]+" ");

}

}

}

19、 從鍵盤上輸入10個整數,并將其放入一個一維數組中,然后將其前5個元素與后5個元素對換,即:第1個元素與第10個元素互換,第2個元素與第9個元素互換…第5個元素與第6個元素互換。分別輸出數組原來各元素的值和對換后各元素的值。

import java.util.*;

public class no19

{

public static void main(String args[])

{

int n=10;

int x[]=new int[n];

Scanner in=new Scanner(System.in);

for (int i=0;i<n;i++)

{

x[i]=in.nextInt();

}

System.out.println("before:");

for (int i=0;i<n;i++)

{

System.out.print(x[i]+" ");

}

for (int i=0;i<n/2;i++)

{

int t=0;

t=x[i];

x[i]=x[n-i-1];

x[n-i-1]=t;

}

System.out.println("");

System.out.println("after:");

for (int i=0;i<n;i++)

{

System.out.print(x[i]+" ");

}

}

}

20、 設計一個圓類,將圓的位置(圓心坐標和半徑)作為屬性(提供任意圓的設置),并能計算圓的面積。

public class no20

{

public static void main(String args[])

{

circle c=new circle(4,4,2);

System.out.println(c.s());

}

}

class circle

{

double r;

double x;

double y;

public circle(double i,double j,double k)

{

this.x=i;

this.y=j;

this.r=k;

}

public double s()

{

return 3.14*Math.pow(this.r,2);

}

}

21、 設計一個Course類,它代表學校中的一門課程。按照實際情況將這門課程的相關信息組織成它的屬性,并定義必要的相應的方法。

public class no21

{

public static void main(String args[])

{

Course c=new Course("哲♂學","比利海靈頓",1000,"1999-9-9");

c.show();

c.teach();

c.homework();

c.test();

}

}

class Course

{

String name=new String();

String teacher=new String();

int fullmark=0;

String startdate=new String();

public Course(String n,String t,int f,String s)

{

this.name=n;

this.teacher=t;

this.fullmark=f;

this.startdate=s;

}

public void show()

{

System.out.println("Course name:"+name+" teacher:"+teacher+" fullmark:"+fullmark+" startdate:"+startdate);

}

public void test()

{

System.out.println("testing...");

}

public void teach()

{

System.out.println("teaching...");

}

public void homework(

)

{

System.out.println("doing homework...");

}

}

22、 設計并實現一個Vehicle類及其子類,它們代表主要的交通工具,定義必要的屬性信息和方法

23、 設計并實現一個MyGraphic類及其子類,它們代表一些基本的圖形,這些圖形包括:矩形、三角形、圓、橢圓等。試給出能描述這些圖形所必需的屬性及必要的方法。

24、 先在一個包中編寫第一類ClassA,要求寫該類中具有四種不同訪問權限的成員,再在另一個包中寫第二個類ClassB,并在該類中編寫一個方法訪問第一個類的成員。

25、 設計一個汽車類Multiplication,在其中定義三個同名的mul方法:第一個方法是計算兩個整數的積;第二個方法是計算兩個浮點數的積;第三個方法是計算三個浮點數的積。

26、 使用繼承和接口技術,編寫一個程序,求解幾何圖形(如直線、三角形、矩形、圓和多邊形)的周長和面積。

進階題:

27、 隨便輸入一段字符串,把出現次數最多的打印出來,如:aabbbbbbbbbcccdffff,就把b打印出來,用java代碼實現

import java.util.*;

public class no27

{

public static void main(String args[])

{

Scanner in=new Scanner(System.in);

String s=in.nextLine();

int l=s.length();

int x[]=new int[l];

boolean b;

int max=0;

for (int i=0;i<l;i++)

{

b=false;

for (int j=i-1;j>0;j--)

{

if (s.charAt(i)==s.charAt(j))

{

x[i]=x[j]+1;

b=true;

break;

}

}

if (!b)

{

x[i]=1;

}

if (x[i]>x[max])

{

max=i;

}

}

System.out.println(s.charAt(max));

}

}

28、 有1、2、3、4個數字,能組成多少個互不相同且無重復數字的三位數?都是多少?

public class no28

{

public static void main(String args[])

{

int sum=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&&j!=k&&k!=i)

{

System.out.println(i+""+j+""+k);

sum++;

}

}

System.out.println("sum:"+sum);

}

}

29、 輸入某年某月某日,判斷這一天是這一年的第幾天?

import java.util.*;

public class no29

{

public static void main(String args[])

{

int x[]={0,30,60,91,121,152,182,213,244,274,305,335};

Scanner in=new Scanner(System.in);

int year=in.nextInt();

int month=in.nextInt();

int day=in.nextInt();

if (!((year%4==0&&year%100!=0)||(year%400==0)))

for (int i=2;i<12;i++)

x[i]--;

System.out.println("day:"+(x[month-1]+day));

}

}

30、 兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽簽決定比賽名單。有人向 隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比,請編程序找出三隊賽手的名單。

31

、 有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。

import java.util.*;

public class no31

{

public static void main(String args[])

{

Scanner in=new Scanner(System.in);

int n=in.nextInt();

int x[]=new int[n];

int d=3;

int m=n;

int t=0;

int k=0;

while(n>1)

{

if (t>m-1) t=0;

if (x[t]==0)

{

k++;

if (k==d)

{

x[t]=1;

k=0;

n--;

}

}

t++;

}

for (int i=0;i<m;i++)

if (x[i]==0)

System.out.print(i+1);

}

}

32、 哥德巴赫猜想是說任何一個大于2的偶數都能表示為兩個素數之和。請編寫一個Java程序,驗證1~100內哥德巴赫猜想的正確性,也就是近似證明哥德巴赫猜想。

public class no32

{

public static void main(String args[])

{

int x[]=new int[100];

x[0]=1;

x[1]=2;

int l=2;

tag: for (int i=3;i<=100;i++)

{

int t=0;

for (int j=2;j<=i/2;j++)

{

if (i % j== 0) continue tag;

}

x[l++]=i;

}

tbg:for (int y=4;y<=100;y+=2)

{

for (int i=0;i<l;i++)

for (int j=l-1;j>=0;j--)

if (x[i]+x[j]==y)

{

System.out.println(y+"="+x[i]+"+"+x[j]);

continue tbg;

}

}

}

}

33、 一個5位數,判斷它是不是回文數。即12321是回文數,個位與萬位相同,十位與千位相同

import java.util.*;

public class no33

{

public static void main(String args[])

{

System.out.println("input [10000,99999]:");

Scanner in =new Scanner(System.in);

String s=in.nextLine();

int n=5;

boolean b=true;

for (int i=0;i<n/2;i++)

{

if (!(s.charAt(i)==s.charAt(n-i-1)))

{

System.out.println("no");

b=false;

break;

}

}

if (b)

System.out.println("yes");

}

}

34、 愛因斯坦曾出過這樣一道有趣的數學題:有一個長階梯,每步上2階,最后剩1階;若每步上3階,最后剩2階;若每步上5階,最后剩4階;若每步上6階,最后剩5階;只有每步上7階,最后一階也不剩。請問該階梯至少有多少階。編寫一個Java程序解決該問題。

public class no34

{

public static void main(String args[])

{

for (int i=7;i<10000;i+=7)

{

if (i%2==1&&i%3==2&&i%5==4&&i%6==5)

{

System.out.println(i);

break;

}

}

}

}

Java免費學習資料直播公開課群:175161984

???????????

再分享一下我老師大神的人工智能教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智能的隊伍中來!https://blog.csdn.net/jiangjunshow

總結

以上是生活随笔為你收集整理的Java程序设计编程题目的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。