當前位置:首頁 » 編程語言 » java基礎編程題

java基礎編程題

發布時間: 2024-08-10 14:18:16

java編程題 本人新手,求詳解。

先看下最終的結果吧,是不是你想要的?

其中,Student是父類,PostGraate是子類,繼承自父類Student,Main是主類,用於創建對象以及把這些對象的功能調用起來。

---------------------------Student代碼如下:------------------------------

/**

* 學生類

* @author 逍遙

*

*/

public class Student {

//學號

private int sId;

//姓名

private String sName;

//數學成績

private double mathScore;

//計算機成績

private double computerScore;

/**

* 獲取學號

* @return

*/

public int getsId() {

return sId;

}

/**

* 設置學號

* @param sId

*/

public void setsId(int sId) {

this.sId = sId;

}

/**

* 獲取姓名

* @return

*/

public String getsName() {

return sName;

}

/**

* 設置姓名

* @param sName

*/

public void setsName(String sName) {

this.sName = sName;

}

/**

* 獲取數學成績

* @return

*/

public double getMathScore() {

return mathScore;

}

/**

* 設置數學成績

* @param mathScore

*/

public void setMathScore(double mathScore) {

this.mathScore = mathScore;

}

/**

* 獲取計算機成績

* @return

*/

public double getComputerScore() {

return computerScore;

}

/**

* 設置計算機成績

* @param computerScore

*/

public void setComputerScore(double computerScore) {

this.computerScore = computerScore;

}

/**

* 輸出成員變數(4個成員變數)的信息。

*/

public void print(){

System.out.println("學號:"+sId);

System.out.println("姓名:"+sName);

System.out.println("計算機成績:"+mathScore);

System.out.println("數學成績:"+computerScore);

}

}

---------------------------Student代碼結束------------------------------

---------------------------PostGraate代碼如下:------------------------------

/**

* 研究生類

* @author 逍遙

*

*/

public class PostGraate extends Student{

//導師姓名

private String tName;

//研究方向

private String ResearchDirection;

/**

* 獲取導師姓名

* @return

*/

public String gettName() {

return tName;

}

/**

* 設置導師姓名

* @param tName

*/

public void settName(String tName) {

this.tName = tName;

}

/**

* 獲取研究方向

* @return

*/

public String getResearchDirection() {

return ResearchDirection;

}

/**

* 設置研究方向

* @param researchDirection

*/

public void setResearchDirection(String researchDirection) {

ResearchDirection = researchDirection;

}

/**

* 研究生類重寫父類的void print()方法,功能是輸出成員變數(6個成員變數)的信息

*/

@Override

public void print() {

// TODO Auto-generated method stub

super.print();

System.out.println("導師姓名:"+tName);

System.out.println("研究方向:"+ResearchDirection);

}

}

---------------------------PostGraate代碼結束------------------------------

---------------------------Main代碼如下:------------------------------

import java.util.Scanner;


/**

* 主類

* @author 逍遙

*

*/

public class Main {


/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

//用於獲取從鍵盤上輸入的信息

Scanner input=new Scanner(System.in);

//創建一個Student類的對象

Student student=new Student();

//從鍵盤上輸入其屬性信息

System.out.print("請輸入學生的學號:");

student.setsId(input.nextInt());

System.out.print("請輸入學生的姓名:");

student.setsName(input.next());

System.out.print("請輸入學生的數學成績:");

student.setMathScore(input.nextDouble());

System.out.print("請輸入學生的計算機成績:");

student.setComputerScore(input.nextDouble());

//並且通過其print方法輸出這些信息;

student.print();

//創建一個PostGraate類的對象

PostGraate postGraate=new PostGraate();

//從鍵盤上輸入其屬性信息

System.out.print("請輸入研究生的學號:");

postGraate.setsId(input.nextInt());

System.out.print("請輸入研究生的姓名:");

postGraate.setsName(input.next());

System.out.print("請輸入研究生的數學成績:");

postGraate.setMathScore(input.nextDouble());

System.out.print("請輸入研究生的計算機成績:");

postGraate.setComputerScore(input.nextDouble());

System.out.print("請輸入研究生的導師姓名:");

postGraate.settName(input.next());

System.out.print("請輸入研究生的研究方向:");

postGraate.setResearchDirection(input.next());

//並且通過其print方法輸出這些信息。

postGraate.print();

}


}

---------------------------Main代碼結束------------------------------

=================知識點的簡單總結=================

本題考察的知識點是面向對象的三大特性之一:繼承。

Student為父類,包含了學號、姓名、數學成績和計算機成績4個屬性,以及一個print()方法。

PostGraate 繼承父類的時候,繼承了父類中的所有方法,因為方法我都是用的public,而屬性繼承不了,因為我在父類中用了封裝,所有屬性都用private修飾了,想訪問屬性的話,必須通過get、set方法,這里,我重寫了父類中的print方法,通過super.print();調用了父類中的print()方法。

最後就是Main類,提供了main方法作為入口函數,用於按要求聲明這些對象以及去調用對象中的方法。

❷ 有關java編程題目

按照題目要求源晌編寫的圓,圓錐和測試類的Java程序如下

Test.java文件內容如下

class Circle{

private double r;

private String color;

public Circle(double r){

this.r=r;

}

public double area(){

return Math.PI*r*r;

}

public double perimeter(){

return Math.PI*2*r;

}

public double getR(){

return this.r;

}

public void setR(double r){

this.r=r;

}

public String getColor(){

return this.color;

}

public void setColor(String color){

this.color=color;

}

public String toString(){

return "圓的半徑為"+r+",顏色為"+color;

}

}

class Cone{

private Circle c;

private double h;

private String color;

public Cone(Circle c,double h){

this.c=c;

this.h=h;

}

public double volume(){

return 1.0/3*c.area()*h;

}

public Circle getCircle(){

return this.c;

}

public void setCircle(Circle c){

this.c=c;

}

public double getH(){

return this.h;

}

public void setH(double h){

this.h=h;

}

public String getColor(){

return this.color;

}

public void setColor(String color){

this.color=color;

}

public String toString(){

return "圓錐的底面積為"燃悔+c.area()+",高為"+h+",顏色為"+color;

}

}

public class Test{

public static void main(String[] args){

Circle circle1=new Circle(2.5);

circle1.setColor("紅色");

System.out.println(circle1.toString());

System.out.println("圓的面積為"+circle1.area());

System.out.println("圓的周雹段鋒長為"+circle1.perimeter());

Cone circlar1=new Cone(circle1,2.7);

circlar1.setColor("藍色");

System.out.println(circlar1.toString());

System.out.println("圓錐的體積為"+circlar1.volume());

}

}

❸ 本人初學java想找些編程例子,鞏固前面所學,最好關於面向對象三大思想方面和多線程、IO等。不要選擇題。

【試題1】任務一:求階乘
l 接受一個輸入,輸出這個數的階乘
l 用長整型計算

任務二:輸出階梯形式的9*9口訣表,如圖1.1所示。
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
圖1.1 階梯形式的9*9口訣表
要求:使用循環結構語句實現。

任務三:編程實現判斷一個整數是否為「水仙花數」。所謂「水仙花數」是指一個三位的整數,其各位數字立方和等於該數本身。例如:153是一個「水仙花數」,因為153=13+53+33。
要求:用帶有一個輸入參數的方法或函數實現,返回值類型為布爾類型。
【試題2】

任務一:已知某個班有M個學生,學習N門課程,已知所有學生的各科成績,編程:分別求每個學生的平均成績,並輸出。
要求:
l 定義一個二維數組,用於存放M個學生的N門成績。定義一個一維數組,用於存放每個學生的平均成績。
l 做二重循環,將每個學生的成績輸入到該二維數組中。
l 做二重循環,對已經存在於二維數組的中的值進行平均分計算,將結果保存到一個一維數組中。
l 做循環輸出該一維數組(即平均分)的值。

任務二:編寫一個程序找出100~1000之間的所有姐妹素數。
註:姐妹素數是指相鄰兩個奇數均為素數。
要求:使用循環結構語句實現。
任務三:求n以內(不包括n)同時能被3和7整除的所有自然數之和的平方根s,並作為函數值返回,最後結果s輸出到文件out.txt中。例如若n為1000時,函數值應為:s=153.909064。

【試題3】
任務一:求2!+3!+4!+5!
任務二:編寫一個程序,對用戶輸入的任意一組數字字元如{3,1,4,7,2,1,1,2,2},輸出其中出現次數最多的字元,並顯示其出現次數。如果有多個字元出現次數均為最大且相等,則輸出最先出現的那個字元和它出現的次數。例如,上面輸入的字元集合中,「1」和「2」都出現了3次,均為最大出現次數,因為「1」先出現,則輸出字元「1」和它出現的次數3次。
任務三:中華人民共和國2011年新的個人所得稅草案規定,個稅的起征點為3000元,分成7級,稅率情況見表1.3, 從鍵盤上輸入月工資,計算應交納的個人所得稅。
表1.3稅率情況表
級數
全月應納稅所得額
稅率 (%)
1
不超過1500元的(即3000-4500之間)
5
2
超過1500元至4500元的部分
10
3
超過4500元至9000元的部分
20
4
超過9000元至35000元的部分
25
5
超過35000元至55000元的部分
30
6
超過55000元至80000元的部分
35
7
超過80000元的部分
45

注意:超出部分按所在稅的級數計算,如:一個人的月收入為6000,應交個人所得稅為:1500*0.05 +((6000-3000)-1500)*0.1=225
請在鍵盤上輸入一個人的月收入,編程實現該公民所要交的稅。
例如:輸入「4000」,則輸出「你要交的稅為:50」。

【試題4】
任務一:請編寫函數fun,其功能是:將兩個兩位數的正整數a、b合並形成一個整數放在c中。合並的方式是:將a數的十位和個位數依次放在c數個位和十位上,b數的十位和個位數依次放在c數的百位和千位上。例如,當a=16,b=35,調用該函數後,c=5361。

任務二:孫悟空在大鬧蟠桃園的時候,第一天吃掉了所有桃子總數一半多一個,第二天又將剩下的桃子吃掉一半多一個,以後每天吃掉前一天剩下的一半多一個,到第n天准備吃的時候只剩下一個桃子。這下可把神仙們心疼壞了,請幫忙計算一下,第一天開始吃的時候桃園一共有多少個桃子。
要求:用循環語句實現,從鍵盤隨機輸入參數n

任務三:輸入一個5位正整數,輸出它是不是迴文數。迴文數是這樣一種數,它的逆序數和它本身相等。例如,12321的逆序數是12321,和它本身相等,所以它是迴文數。又例如25128的逆序數是82152,所以它不是迴文數。
要求:使用分支或循環結構語句實現。

【試題5】

任務一:判斷一個年份N閏年;
輸入:年份N
任務二:一個球從100m高度自由落下,每次落地後反彈回原高度的一半,再落下,再反彈。求它在第十次落地時,共經過多少米?第十次反彈多高?
任務三:Redraiment的老家住在工業區,日耗電量非常大。是政府的眼中釘肉中刺,但又沒辦法,這里頭住的可都是納稅大戶呀。
今年7月,又傳來了不幸的消息,政府要在7、8月對該區進行拉閘限電。但迫於壓力,限電制度規則不會太摳門,政府決定從7月1日停電,然後隔一天到7月3日再停電,再隔兩天到7月6日停電,依次下去,每次都比上一次晚一天。
Redraiment可是軟體專業的學生,怎麼離得開計算機。如果停電,就「英雄無用武之地」了。所以他開始盤算起自己回家的日子了,他想知道自己到家後到底要經歷多少天倒霉的停電。你能幫他算一算嗎?
要求:從鍵盤輸入放假日期,開學日期,日期限定在7、8月份,且開學日期大於放假日期。
提示:可以用數組標記停電的日期

【試題6】

任務一:定義一個電腦類,包含電腦的品牌,價格,型號。
任務二:某班同學上體育課,從1開始報數,共38人,老師要求按1,2,3重復報數,報數為1的同學往前走一步,而報數為2的同學往後退一步,試分別將往前走一步和往後退一步的同學的序號列印出來。
要求:用循環語句實現

任務三:一個人很倒霉,不小心打碎了一位婦女的一籃子雞蛋。為了賠償便詢問籃子里有多少雞蛋。那婦女說,她也不清楚,只記得每次拿兩個則剩一個,每次拿3個則剩2個,每次拿5個則剩4個,若每個雞蛋1元,請你幫忙編程,計算最少應賠多少錢?
要求:用循環語句實現,直接列印出結果不給分

【試題7】

任務一:從鍵盤接收一個整數N,統計出1~N之間能被7整除的整數的個數,以及這些能被7整除的數的和。
屏幕提示樣例:
請輸入一個整數:20
1~20之間能被7整除的數的個數:2
1~20之間能被7整除的所有數之和:21

任務二:從鍵盤輸入一個整數N,列印出有N*2-1行的菱形。
例如輸入整數4,則屏幕輸出如下菱形。

要求:使用循環結構語句實現。

任務三:編程實現判斷一個整數是否為素數。所謂素整是一個大於1的正整數,除了1和它本身,該數不能被其它的正整數整除。
要求:用帶有一個輸入參數的方法或函數實現,返回值類型為布爾類型。

【試題8】
任務一:設計一個學生類,包括學號,姓名,班次,系別,聯系電話,並包含一個構造方法。
要求:構造方法必須有5個參數,能對學生類中的屬性進行賦初值。

任務二:使用冒泡排序法對數組中的整數按升序進行排序,如下所示:
原始數組:a[]={1,9,3,7,4,2,5,0,6,8}
排序後: a[]={0,1,2,3,4,5,6,7,8,9}
要求:使用循環結構語句實現。

任務三:編程實現以下要求。n個人圍坐成一卷,從第一個人開始計數,數到m,第m個人出列,接下來繼續計數,直到所有人都出列。例如:共有5個人,數到3出列,則順序為3,1,5,2,4。
要求:用帶有兩個輸入參數(一個總人數n,一個為計數m)的方法或函數實現,返回值類型為數組。

【試題9】

任務一:輸入一行字元,輸出其中的數字的個數。例如輸入「fwEt2f44F2k8」,輸出結果為5。

任務二:用循環列印楊輝三角到N層
輸入:自然數N

任務三:刪去一維數組中相同的數
輸入 2 3 3 3 4 5 2 9 10 9 3 2 4
輸出2 3 4 5 9 10
【試題10】

任務一:定義一個矩形類,包括長,寬兩個屬性,計算周長方法和計算面積方法。

任務二:編寫程序實現:輸入一個整數,判斷它能否被3、5、7整除,並輸出以下信息之一:
能同時被3、5、7整除
能同時被3、5整除
能同時被3、7整除
能同時被5、7整除
只能被3、5、7中的一個整除
不能被3、5、7任一個整除
要求:使用分支結構語句實現。

任務三:尋找最大數經常在計算機應用程序中使用。例如:確定銷售競賽優勝者的程序要輸入每個銷售員的銷售量,銷量最大的員工為銷售競賽的優勝者,寫一個程序:從鍵盤輸入10個數,列印出其中最大的數。
要求:程序應正確使用如下兩個變數:number:當前輸入程序的數,largest:到目前為止的最大數。

給你30個題 慢慢做吧

❹ 5道簡單的JAVA編程題(高分懸賞)

很詳細的幫你寫下,呵呵,所以要給分哦!
1、
(1)源程序如下:
public class One {

public static void main(String[] args) {
String name = "張三";
int age = 23;
char sex = '男';
String myclass = "某某專業2班";
System.out.println("姓名:" + name);
System.out.println("姓名:" + age);
System.out.println("姓名:" + sex);
System.out.println("姓名:" + myclass);

}

}

(2)

編寫完程序的後綴名是.java,如本題,文件名就是One.java。
開始\運行\cmd,進入「命令提示符窗口」,然後用javac編譯器編譯.java文件,語句:javac One.java。

(3)
編譯成功後,生成的文件名後綴是.class,叫做位元組碼文件。再用java解釋器來運行改程序,語句:java One

2、編寫程序,輸出1到100間的所有偶數
(1)for語句
public class Two1 {

public static void main(String[] args) {
for(int i=2;i<=100;i+=2)
System.out.println(i);

}
}

(2)while語句
public class Two2 {

public static void main(String[] args) {
int i = 2;
while (i <= 100) {
System.out.println(i);
i += 2;
}
}
}

(3)do…while語句
public class Two3 {

public static void main(String[] args) {
int i = 2;
do {
System.out.println(i);
i += 2;
}while(i<=100);
}
}

3、編寫程序,從10個數當中找出最大值。
(1)for循環
import java.util.*;

public class Three1 {

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int number;
int max = 0;
for (int i = 0; i < 10; i++) {
System.out.print("輸入第" + (i + 1) + "個數:");
number = input.nextInt();
if (max < number)
max = number;
}
System.out.println("最大值:" + max);
}
}

(2)while語句
import java.util.*;

public class Three2 {

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int number;
int max = 0;
int i = 0;
while (i < 10) {
System.out.print("輸入第" + (i + 1) + "個數:");
number = input.nextInt();
if (max < number)
max = number;
i++;
}
System.out.println("最大值:" + max);
}
}

(3)do…while語句
import java.util.*;

public class Three3 {

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int number;
int max = 0;
int i = 0;
do {
System.out.print("輸入第" + (i + 1) + "個數:");
number = input.nextInt();
if (max < number)
max = number;
i++;
}while(i<10);
System.out.println("最大值:" + max);
}
}

4、編寫程序,計算從1到100之間的奇數之和。
(1)for循環

public class Four1 {

public static void main(String[] args) {
int sum=0;
for(int i = 1;i<=100;i+=2){
sum+=i;
}
System.out.println("1~100間奇數和:" + sum);
}
}

(2)while語句
public class Four2 {

public static void main(String[] args) {
int sum = 0;
int i = 1;
while (i <= 100) {
sum += i;
i += 2;
}
System.out.println("1~100間奇數和:" + sum);
}
}

(3)do…while語句
public class Four3 {

public static void main(String[] args) {
int sum = 0;
int i = 1;
do {
sum += i;
i += 2;
} while (i <= 100);
System.out.println("1~100間奇數和:" + sum);
}
}

5、
(1)什麼是類的繼承?什麼是父類?什麼是子類?舉例說明。
繼承:是面向對象軟體技術當中的一個概念。如果一個類A繼承自另一個類B,就把這個A稱為"B的子類",而把B稱為"A的父類"。繼承可以使得子類具有父類的各種屬性和方法,而不需要再次編寫相同的代碼。在令子類繼承父類的同時,可以重新定義某些屬性,並重寫某些方法,即覆蓋父類的原有屬性和方法,使其獲得與父類不同的功能。另外,為子類追加新的屬性和方法也是常見的做法。繼承需要關鍵字extends。舉例:
class A{}
class B extends A{}
//成員我就不寫了,本例中,A是父類,B是子類。

(2)編寫一個繼承的程序。
class Person {
public String name;
public int age;
public char sex;

public Person(String n, int a, char s) {
name = n;
age = a;
sex = s;
}

public void output1() {
System.out.println("姓名:" + name + "\n年齡:" + age + "\n性別:" + sex);
}
}

class StudentPerson extends Person {
String school, department, subject, myclass;

public StudentPerson(String sc, String d, String su, String m, String n,
int a, char s) {
super(n, a, s);
school = sc;
department = d;
subject = su;
myclass = m;
}

public void output2() {
super.output1();
System.out.println("學校:" + school + "\n系別:" + department + "\n專業:"
+ subject + "\n班級:" + myclass);
}
}

public class Five2 {

public static void main(String[] args) {
StudentPerson StudentPersonDemo = new StudentPerson("某某大學", "某某系別",
" 某專業", "某某班級", " 張三", 23, '男');
StudentPersonDemo.output2();
}
}

熱點內容
傳奇是要什麼配置的手機 發布:2024-11-25 18:43:34 瀏覽:949
榮耀v6如何設置程序安裝密碼 發布:2024-11-25 18:43:25 瀏覽:556
C語言讀盤 發布:2024-11-25 18:41:55 瀏覽:573
我的世界伺服器被破壞了怎麼恢復 發布:2024-11-25 18:27:57 瀏覽:329
日常電瓶叉車配置有哪些 發布:2024-11-25 18:21:17 瀏覽:361
java的二分查找 發布:2024-11-25 18:21:11 瀏覽:24
買帕薩特選哪個配置 發布:2024-11-25 18:17:23 瀏覽:224
編程很掙錢嗎 發布:2024-11-25 18:13:43 瀏覽:936
接受btc支付的香港雲伺服器 發布:2024-11-25 18:02:09 瀏覽:909
華為手機怎麼密碼解鎖 發布:2024-11-25 17:56:34 瀏覽:938