每個人都曾試圖在平淡的學習、工作和生活中寫一篇文章。寫作是培養人的觀察、聯想、想象、思維和記憶的重要手段。寫范文的時候需要注意什么呢?有哪些格式需要注意呢?以下是我為大家搜集的優質范文,僅供參考,一起來看看吧
java基礎編程題目篇一
包括編程語言和相關的技術。
主要用于開發,桌面應用程序和internet應用程序。4.開發一個java應用程序的基本步驟:編寫源程序,編譯程序和運行程序。為擴展名,為擴展名。文件,文件。
5.編寫java程序要符合java編碼規范,為程序編寫注釋可大大增加程序的閱讀性。
ise是一個功能強大的集成開發環境(ide)。它的各種窗口便于java程序的開發,調試和管理。
第二章變量、數據類型和運算符
1.變量是一個數據存儲空間的表示,它是存儲數據的基本單元。變量的命名規則:
(1)必須以字母,“_”,“$”開頭。(2)可以包括數字,但不能以數字開頭(3)不能包括除“_”,“$”以外的特殊符號(4)不能使用java語言關鍵字或者保留字(goto)
中數據類型分為基本數據類型和引用數據類型,基本數據類型有整型(int),雙精度浮點型(double),字符型(char)和字符串(string)。3.變量要先聲明并賦值,才能使用。提供各種類型的運算符,具體如下。
(1)賦值運算(=)(2)算術運算符(+,-,*,/,%)(3)關系運算符(>,>=,<,<=,==,!=)(4)條件運算符(條件?表達式1:表達式2)(5)邏輯運算符(&& , || ,!, & , |)&&(短路與)與&的區別:&&進行判斷時,當第一個條件為假,則不需要判斷第二個條件,結果為假。&進行判斷時,即使第一個條件為假時,也需要判斷完第二個條件才能給出結果為假。||(短路或)與|的區別:與上同理(5)位運算符(&, | , << , >> , >>>)5.數據類型轉換是為了方便不同類型的數據之間進行運算
6.數據類型轉換包括了自動類型轉換和強制類型轉換,自動類型轉換需要滿足類型兼容且目標類型大于源類型的條件
中使用boolean類型表示真假,boolean類型的兩個值為true和false。
中的關系運算符可以用于來比較大小,高低,多少等,比較厚的結果是boolean類型。
提供scanner類,可以實現從控制臺獲取鍵盤上輸入的信息
第三章選擇結構(一)java中的if選擇結構,包括以下形式
(1)基本的if選擇結構:可以處理單一或組合條件的情況(2)if-else選擇結構:可以處理簡單的條件分支情況(3)多重if選擇結構:可以處理連續區間的條件分支情況(4)嵌套if選擇結構:可以處理復雜的條件分支情況
第四章選擇結構(二)選擇結構適用于進行等值判斷
關鍵字后面小括號里表達式的值可以是int , short , byte , char , 枚舉 , string(jdk1.7開始支持)
第五章循環結構(一)1.循環結構由循環結構和循環操作構成,只要滿足循環條件,循環操作就會反復執行
2.使用循環結構解決問題問題的步驟:分析循環條件和循環操作,套用循環結構的語法寫出代碼,檢查循環能否退出
循環結構是先判斷后執行,do-while是先執行,后判斷。do-while至少執行一次。
調試:設置斷點,單步運行,觀察變量
第六章循環結構(二)循環結構的語法結構如下
for(表達式1:表達式2:表達式3){
} //循環體
表達式1:循環結構的初始部分,為循環變量賦初值 表達式2:循環結構的循環條件
表達式3:循環條件的迭代部分,通常用來修改循環變量的值 2.用break和continue語句控制流程
(1)break語句用于終止某個循環,程序跳轉到循環體外的下一條語句。break也可以在switch語句中使用
(2)continue語句用于跳出本次循環,進入下一次循環
(3)return可以結束當前方法的執行并退出,返回調用該方法的語句處
第七章數組
1.數組是可以在內存中連續存儲多個元素的結構,數組中的所有元素必須屬于相同的數據類型
2.數組中的元素通過數組的下標進行訪問,數組的下標從0開始 3數組可用一個循環為元素賦值,或用一個循環輸出數組中的元素信息
可獲得數組長度
5.利用arrays.提供的sort()方法可以方便的對數組中的元素進行排序 6.二維數組實際上就是一個一維數組,他的每個元素又是一個一維數組。
第八章循環結構進階
1.數組的輸入排序,選擇排序,冒泡排序
2.在二重循環中可以使用break、continue語句控制程序的執行 選擇排序:
思路:每次循環得到最小值的下標,然后交換數據。如果交換的位置等于原來的位置,則不交換。插入排序:
思路:將數據插入到已排序的數組中。
java基礎編程題目篇二
java編程心得
計算機3班
竇金霞
20104773
最近幾周一直在弄程序,說實話真的很累,但累中也有成功的快樂。我覺得學到了很多東西,這是只看課本知識所不能學到的。
說實話,以前我一直沒學過java雖然我也知道java的重要性,可是即使上課聽了,不實踐還是掌握不了。因為種種原因,今年我沒有買筆記本。沒有機器,僅僅靠每周一次的上機練習是絕對不夠的。所以我就插空調程序,在舍友們不用的時候自己再接她們的電腦調。
調上一個web版的通訊錄程序時我已經感覺到學的很吃力,好多東西都不懂。這次做的這個學生成績管理系統更復雜了,所以一開始調的時候感覺特別吃力.所以我告訴自己不能放棄,慢慢來,就這樣我從最基本的sql語句session對象開始學起,我覺得我還有太多不懂得所以要比別人付出更多的努力。就這樣我一點一點的學著??
說心里話,在做上一個web版的通訊錄時,我就感覺到成功的喜悅。好多地方我都是一點一點的問的,在問的過程中,我也學會了很多,像:servlet和jsp之間跳不過去時有兩種解決辦法,;二是將servlet中的throws exception改成try catch以捕捉異常;我還學到了集中查找錯誤的方法,可以加上兩個雙斜杠“//”將具體的方法屏蔽掉,一檢查是方法錯誤還是servlet錯誤,n()將獲得的數據輸出,用來檢查數據傳輸過程有沒有錯誤等等。
雖然在別人看來,這些方法可能都很常規,但是確實我自己學會的,我覺得很有成就感。我已經做好計劃了,暑假的時候去買本本用自己的本本練習一下java,雖然下學期不學java了,但是我對java的熱情不會因為這個而削減的!
做完這個學生成績管理系統后,我覺得我對java的看法已經改變了。一前總以為java很繁瑣很難,聽同學說java不好學,開始又有一些聽不懂,所以一直很畏懼java。但真正做了這個系統以后我才感覺到其實任何事都沒有難與不難之分,只要你肯努力的去做,世上無難事只怕有心人!
我現在對java學習充滿了熱情,我知道我還有很多的不足
還有很多需要努力的地方,所以我的java之旅將繼續進行??
java基礎編程題目篇三
in the following code, which is the earliest statement, where the object originally held in e, may be garbage collected:
class test {
static void main(string args []){
ee e = new employee(“bob”, 48);
atepay();
n(etails());
6.e = null;
7.e = new employee(“denise”, 36);
atepay();
n(etails());
10.}
11.}
only one:
in the following code, which is the earliest statement, where the object originally held in e, may be garbage collected:
class test {
static void main(string args []){
ee e = new employee(“bob”, 48);
atepay();
n(etails());
6.e = null;
7.e = new employee(“denise”, 36);
atepay();
n(etails());
10.}
11.}
only one:
10
11
7
8
2:exhibit :
class test(e static int j = 0;
e static boolean methodb(int k)(5.j += k;
true;
6.)
static void methoda(int i){
n b:
10.b = i < 10 | methodb(4);
11.b = i < 10 || methodb(8);
12.)
static void main(string args[] }(a(0);
n(j);
17.)
18.)
what is the result?
program prints “0”
program prints “4”
program prints “8”
program prints “12”
3:what is written to the standard output given the following statement:n(4|7);
select the right answer:
a.4
b.5
c.6
d.7
4:
select valid identifier of java:
select valid identifier of java:
a.%passwd
b.3d_game
c.$charge
5:設有變量說明語句int a=1,b=0;
則執行以下程序段的輸出結果為()。
switch(a)
{
case 1:
switch(b)
{
case 0:printf(“**0**”);break;
case 1:printf(“**1**”);break;
}
case 2:printf(“**2**”);break;
}
printf(“ ”);
a.**0**
b.**0****2**
c.**0****1****2**
d.有語法錯誤
6:in the following pieces of code, which one will compile without any error?
buffer sb1 = “abcd”;
n b = new boolean(“abcd”);
c.c: byte b = 255;
fl = 1.2;
7:
what is the result when you compile and run the following code?
public class throwsdemo
{
static void throwmethod()
{
n(“inside throwmethod.”);
throw new illegalaccessexception(“demo”);
}
public static void main(string args[])
{
try
{
throwmethod();
}
catch(illegalaccessexception e)
{
n(“caught ” + e);
}
}
}
choices:
what is the result when you compile and run the following code?
public class throwsdemo
{
static void throwmethod()
{
n(“inside throwmethod.”);
throw new illegalaccessexception(“demo”);
}
public static void main(string args[])
{
try
{
throwmethod();
}
catch(illegalaccessexception e)
{
n(“caught ” + e);
}
}
}
choices:
ation error
e error
e successfully, nothing is ed by caught:laccessexcption: demo
8:which of the following statements are not legal?
l = 4990;
i = 4l;
d = 34.4;
t = 0.9f.9:
give the following java class:
public class example{
public static void main(string args[]){
static int x[] = new int[15];
n(x[5]);
}
}
which statement is corrected?
give the following java class:
public class example{
public static void main(string args[]){
static int x[] = new int[15];
n(x[5]);
}
}
which statement is corrected?
compile, some error will run, some error will is is null.10:下面關于變量及其范圍的陳述哪些是錯的。
a.實例變量是類的成員變量。
b.實例變量用關鍵字static聲明。
c.在方法中定義的局部變量在該方法被執行時創建
d.局部變量在使用前必須被初始化。
11:
public class x{
public object m(){
object o = new float(3.14f);//line 3
object [] oa = new object[1];//line 4
oa[0] = o;//line 5
o=null;//line 6
return oa[0];//line 7
}
}
when is the float object, created in line 3,eligible for garbage collection?
public class x{
public object m(){
object o = new float(3.14f);//line 3
object [] oa = new object[1];//line 4
oa[0] = o;//line 5
o=null;//line 6
return oa[0];//line 7
}
}
when is the float object, created in line 3,eligible for garbage collection?
after line after line 6
after line 7(that is,as the method returns)
in this method
12:
which is the most appropriate code snippet that can be inserted at line 18 in the following code?
(assume that the code is compiled and run with assertions enabled)
.*;
class asserttest
4.{
e hashmap cctld;
asserttest()
8.{
= new hashmap();
(“in”, “india”);
(“uk”, “united kingdom”);
(“au”, “australia”);
13.// more code...14.}
15.// other methods.... string getcountry(string countrycode)
17.{
18.// what should be inserted here?
country =(string)(countrycode);
country;
21.}
22.}
which is the most appropriate code snippet that can be inserted at line 18 in the following code?
(assume that the code is compiled and run with assertions enabled)
.*;
class asserttest
4.{
e hashmap cctld;
asserttest()
8.{
= new hashmap();
(“in”, “india”);
(“uk”, “united kingdom”);
(“au”, “australia”);
13.// more code...14.}
15.// other methods.... string getcountry(string countrycode)
17.{
18.// what should be inserted here?
country =(string)(countrycode);
country;
21.}
22.}
countrycode!= null;
countrycode!= null : “country code can not be null”;
cctld!= null : “no country code data is available”;
cctld : “no country code data is available”;
13:
give the following code:
public class example{
public static void main(string args[]){
int l=0;
do{
n(“doing it for l is:”+l);
}while(—l>0)
n(“finish”);
}
}
which well be output:
give the following code:
public class example{
public static void main(string args[]){
int l=0;
do{
n(“doing it for l is:”+l);
}while(—l>0)
n(“finish”);
}
}
which well be output:
it for l is 3
it for l is 1
it for l is 2
it for l is 0
14:which statements about java code security are not true?
bytecode verifier loads all classes needed for the execution of a ing code is performed by the runtime runtime the bytecodes are loaded, checked and run in an interpreter. class loader adds security by separating the namespaces for the classes of the local file system from those imported from network sources.15:a class design requires that a member variable should be accessible only by same package, which modifer word should be used?
ted
modifer
e
16:character流與byte流的區別是
a.每次讀入的字節數不同
b.前者帶有緩沖,后者沒有
c.前者是塊讀寫,后者是字節讀寫
d.二者沒有區別,可以互換使用
簡答題
17:找出兩個字符串中最大子字符串,如“abractyeyt”,“dgdsaeactyey”的最大子串為“actyet”
18:假設你有一個用1001個整數組成的數組,這些整數是任意排列的,但是你知道所有的整數都在1到1000(包括1000)之間。此外,除一個數字出現兩次外,其他所有數字只出現一次。假設你只能對這個數組做一次處理,用一種算法找出重復的那個數字。如果你在運算中使用了輔助的存儲方式,那么你能找到不用這種方式的算法嗎?
19:到底在哪里使用cascade=“...”?
20:使用tomcat部署應用程序 emoryerror 嗎?如何解決的。
21:請寫一個java程序實現數據庫緩沖池的功能?
22:有200個正整數,且每個數均在1000至9999之間。請編制函數,其函數的功能是:要求按每個數的后三位的大小進行升序排列,然后取出滿足此條件的前10個數依次存入數組bb中,如果后三位的數值相等,則按原先的數值進行降序排列。
23:anonymous inner class(匿名內部類)是否可以extends(繼承)其它類,是否可以implements(實現)interface(接口)?
24:找出字符串a中包含的字符可以進行的所有不同組合。例如:abccd中,ab,ac,bc,cc,abd等都是可能的組合。
25:下面的代碼在絕大部分時間內都運行得很正常,請問在什么情況下會出現問題?問題的根源在哪里?
import .linkedlist;
public class stack {
linkedlist list = new linkedlist();
public synchronized void push(object x){
synchronized(list){
t(x);
notify();
}
}
public synchronized object pop()
throws exception {
synchronized(list){
if(()<= 0){
wait();
}
return last();
}
}
}
java基礎編程題目篇四
《java編程》
計算器
班級:****** 姓名:******
學號: ******* 指導老師:******
實驗名稱:java計算器
1實驗目的: java編程語言在編程方面的具體應用,以及使用面向對象方法,對小應用程序進行需求分
析、概要設計、詳細設計,最后使用java編程實現的全過程。
2實驗意義:
在編程我們使用的java語言,是目前比較流行的編程語言。在當今這個時代,java語言在編程方面的優勢使得編程有了更好的選擇。java語言最大的特點是具有跨平臺性,使其不受平臺不同的影響,得到了廣泛的應用。實訓性質
本課程是計算機信息管理專業的一門實踐性課程,是《java編程》課程的實踐性教學環節。實訓目標
⑴綜合應用java程序設計的知識解決實際問題。
⑵學會在應用程序的設計過程中,應用面向對象的程序設計方法。⑶學會應用jdbc創建數據庫應用程序。
⑷學會開發基于swing的應用程序及多文檔應用程序的設計。實訓任務
用java語言開發工具(例如jdk、jcreator、netbeans等)制作一個簡單的可運行的完整的應用程序或小型系統,并編制出各階段必要的文檔。
將創建一個計算器,可以進行常用的加減乘除算術運算。本實例的知識點有:窗口布局器gridlayout的應用,對按鈕消息的監聽和響應。
6實訓條件
<軟件:>windows xp,netbeans ide 6.52 7開發背景: java是由sun microsystems公司于1995年5月推出的java程序設計語言(以下簡稱java語言)和java平臺的總稱。java語言是一個支持網絡計算的面向對象程序設計語言。java語言吸收了smalltalk語言和c++語言的優點,并增加了其它特性,如支持并發程序設計、網絡通信、和多媒體數據控制等。
8系統部分分析:
1)java語言是簡單的。java語言的語法與c語言和c++語言很接近,使得大多數程序員很容易學習和使用java。另一方面,java丟棄了c++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉換。
2)java語言是一個面向對象的。java語言提供類、接口和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實現機制(關鍵字為implements)。java語言全面支持動態綁定,而c++ 語言只對虛函數使用動態綁定
3)java語言是分布式的。java語言支持internet應用的開發,在基本的java應用編程接口中有一個網絡應用編程接口(),它提供了用于網絡應用編程的類庫,包括url、urlconnection、socket、serversocket等。java的rmi(遠程方法激活)機制也是開發分布式應用的重要手段。
4)java語言是健壯的。java的強類型機制、異常處理、廢料的自動收集等是java程序健壯性的重要保證。對指針的丟棄是java的明智選擇。java的安全檢查機制使得java更具健壯性。
5)java語言是安全的。java通常被用在網絡環境中,為此,java提供了一個安全機制以防惡意代碼的攻擊。除了java語言具有的許多安全特性以外,java對通過網絡下載的類具有一個安全防范機制(類classloader),如分配不同的名字空間以防替代本地的同名類、字節代碼檢查,并提供安全管理機制.6)java語言是體系結構中立的。java程序(后綴為java的文件)在java平臺上被編譯為體系結構中立的字節碼格式(后綴為class的文件), 然后可以在實現這個java平臺的任何系統中運行。
7)java語言是可移植的。這種可移植性來源于體系結構中立性,另外,java還嚴格規定了各個基本數據類型的長度。java系統本身也具有很強的可移植性,java編譯器是用java實現的.8)java語言是解釋型的。如前所述,java程序在java平臺上被編譯為字節碼格式,然后可以在實現這個java平臺的任何系統中運行。
9)java是高性能的。與那些解釋型的高級腳本語言相比,java的確是高性能的。事實上,java的運行速度隨著jit(just-in-time)編譯器技術的發展越來越接近于c++。
10)java語言是多線程的。在java語言中,線程是一種特殊的對象,它必須由thread類或其子(孫)類來創建。
11)java語言是動態的。java語言的設計目標之一是適應于動態變化的環境。
目錄
課程設計題目 ……………………………… p1
課程設計簡介 ……………………………… p2
課程設計源代碼…………………………… p5
課程設計運行結果 ……………………… p15 課程設計心得體會 ………………………
p16
package computerpad;import .*;import .event.*;import .*;import .*;import list;import format;public class computerpad extends frame implements actionlistener {
numberbutton numberbutton[];
operationbutton oprationbutton[];
button 小數點按鈕,正負號按鈕,退格按鈕,求倒數按鈕,等號按鈕,清零按鈕;
panel panel;
jtextfield resultshow;
string 運算符號[]={“+”,“-”,“*”,“/”};
linkedlist 鏈表;
boolean 是否按下等號=false;
public computerpad()
{
super(“計算器”);
鏈表=new linkedlist();
numberbutton=new numberbutton[10];
for(int i=0;i<=9;i++)
{
numberbutton[i]=new numberbutton(i);
numberbutton[i].addactionlistener(this);
}
oprationbutton=new operationbutton[4];
for(int i=0;i<4;i++)
{
oprationbutton[i]=new operationbutton(運算符號[i]);
oprationbutton[i].addactionlistener(this);
}
小數點按鈕=new button(“.”);
正負號按鈕
=new button(“+/-”);
等號按鈕=new button(“=”);
求倒數按鈕=new button(“1/x”);
退格按鈕=new button(“退格”);
清零按鈕=new button(“c”);
eground();
eground();
eground();
eground();
eground();
eground();
ionlistener(this);
ionlistener(this);
ionlistener(this);
ionlistener(this);
ionlistener(this);
ionlistener(this);
resultshow=new jtextfield(10);
izontalalignment();
eground();
t(new font(“timesroman”,,14));
der(new softbevelborder(d));
kground();
table(false);
panel=new panel();
out(new gridlayout(4,5));
(numberbutton[1]);
(numberbutton[2]);
(numberbutton[3]);
(oprationbutton[0]);
(清零按鈕);
(numberbutton[4]);
(numberbutton[5]);
(numberbutton[6]);
(oprationbutton[1]);
(退格按鈕);
(numberbutton[7]);
(numberbutton[8]);
(numberbutton[9]);
(oprationbutton[2]);
(求倒數按鈕);
(numberbutton[0]);
(正負號按鈕);
(小數點按鈕);
(oprationbutton[3]);
(等號按鈕);
add(panel,);
add(resultshow,);
addwindowlistener(new windowadapter()
{ public void windowclosing(windowevent e)
{
(0);
}
});
setvisible(true);
setbounds(100,50,240,180);
setresizable(false);
validate();
} public void actionperformed(actionevent e)
{
if(rce()instanceof numberbutton)
{
numberbutton b=(numberbutton)rce();
if(()==0)
{
int number=ber();
(“"+number);
t(”“+number);
是否按下等號=false;
}
else if(()==1&&是否按下等號==false)
{
int number=ber();
string num=(string)first();
string s=(”“+number);
(0,s);
t(s);
}
else if(()==1&&是否按下等號==true)
{
int number=ber();
first();
(”“+number);
是否按下等號=false;
t(”“+number);
}
else if(()==2)
{
int number=ber();
(”“+number);
t(”“+number);
}
else if(()==3)
{
int number=ber();
string num=(string)t();
string s=(”“+number);
(2,s);
t(s);
}
}
else if(rce()instanceof operationbutton)
{
operationbutton b=(operationbutton)rce();
if(()==1)
{
string fuhao=運算符號();
(fuhao);
}
else if(()==2)
{
string fuhao=運算符號();
(1,fuhao);
}
else if(()==3)
{
string fuhao=運算符號();
string number1=(string)first();
string number2=(string)t();
string 運算符號=(string)(1);
try
{
double n1=ouble(number1);
double n2=ouble(number2);
double n=0;
if((”+“))
{
n=n1+n2;
}
else if((”-“))
{
n=n1-n2;
}
else if((”*“))
{
n=n1*n2;
}
else if((”/“))
{
n=n1/n2;
}
();
(”“+n);
(fuhao);
t(”“+n);
}
catch(exception ee)
{
}
}
}
else if(rce()==等號按鈕)
{
是否按下等號=true;
if(()==1||()==2)
{
string num=(string)first();
t(”“+num);
}
else if(()==3)
{
string number1=(string)first();
string number2=(string)t();
string 運算符號=(string)(1);
try
{
double n1=ouble(number1);
double n2=ouble(number2);
double n=0;
if((”+“))
{
n=n1+n2;
}
else if((”-“))
{
n=n1-n2;
}
else if((”*“))
{
n=n1*n2;
}
else if((”/“))
{
n=n1/n2;
}
t(”“+n);
(0,”“+n);
last();
last();
}
catch(exception ee)
{
}
}
}
else if(rce()==小數點按鈕)
{
if(()==0)
{
是否按下等號=false;
}
else if(()==1)
{
string dot=el();
string num=(string)first();
string s=null;
if(f(dot)==-1)
{
s=(dot);
(0,s);
}
else
{
s=num;
}
(0,s);
t(s);
}
else if(()==3)
{
string dot=el();
string num=(string)t();
string s=null;
if(f(dot)==-1)
{
s=(dot);
(2,s);
}
else
{
s=num;
}
t(s);
}
}
else if(rce()==退格按鈕)
{
if(()==1)
{
string num=(string)first();
if(()>=1)
{
num=ing(0,()-1);
(0,num);
t(num);
}
else
{
last();
t(”0“);
}
}
else if(()==3)
{
string num=(string)t();
if(()>=1)
{ num=ing(0,()-1);
(2,num);
t(num);
}
else
{
last();
t(”0“);
}
}
}
else if(rce()==正負號按鈕)
{
if(()==1)
{
string number1=(string)first();
try
{
double d=ouble(number1);
d=-1*d;
string str=f(d);
(0,str);
t(str);
}
catch(exception ee)
{
}
}
else if(()==3)
{
string number2=(string)t();
try
{
double d=ouble(number2);
d=-1*d;
string str=f(d);
(2,str);
t(str);
}
catch(exception ee){
}
}
}
else if(rce()==求倒數按鈕)
{
if(()==1||()==2)
{
string number1=(string)first();
try
{
double d=ouble(number1);
d=1.0/d;
string str=f(d);
(0,str);
t(str);
}
catch(exception ee){
}
}
else if(()==3)
{
string number2=(string)t();
try
{
double d=ouble(number2);
d=1.0/d;
string str=f(d);
(0,str);
t(str);
}
catch(exception ee){
}
}
}
else if(rce()==清零按鈕)
{
是否按下等號=false;
t(”0“);
();
}
} public static void main(string args[])
{
new computerpad();
}
}
package computerpad;import .*;import .event.*;import .*;public class numberbutton extends button {
int number;
public numberbutton(int number)
{
super(”"+number);
=number;
setforeground();
}
public int getnumber()
{
return number;
} }
import .*;import .event.*;import .*;public class operationbutton extends button {
string 運算符號;
public operationbutton(string s)
{
super(s);
運算符號=s;
setforeground();
}
public string get運算符號()
{
return 運算符號;
} } 14 java實訓心得:
未接觸java之前,聽人說java這門語言如何的強大和難以入門,但學習之后,給我的感覺卻是語言沒有所謂的難于不難,關鍵是自己有沒有真正投入去學,有沒有花時間去學。java是一門很好的語言,經過周圍人對java的宣傳,我一開始不敢去學習這門語言,因為一門高級語言總是讓人想到一開始的學習會很難,但是后來在自己的努力和老師同學的幫助下,我加入了java學習者的行列。
老師把我們帶進了門,那么,以后漫長的深入學習還是要靠自己。經常性的編寫一些程序,或則去看懂、研究透別人編寫的程序對于我們打好基礎是非常有利的。讓我們懷著對java的一腔熱情,用自己的刻苦努力去把java學好。將來,用自己的成績去回報有恩于我們的社會、家人和朋友。
java基礎編程題目篇五
【程序1】
題目:古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少?
1.程序分析: 兔子的規律為數列1,1,2,3,5,8,13,21....【程序2】
題目:判斷101-200之間有多少個素數,并輸出所有素數。
1.程序分析:判斷素數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除,則表明此數不是素數,反之是素數。
【程序3】
題目:打印出所有的“水仙花數”,所謂“水仙花數”是指一個三位數,其各位數字立方和等于該數本身。例如:153是一個“水仙花數”,因為153=1的三次方+5的三次方+3的三次方。
1.程序分析:利用for循環控制100-999個數,每個數分解出個位,十位,百位。
【程序4】
題目:將一個正整數分解質因數。例如:輸入90,打印出90=2*3*3*5。
程序分析:對n進行分解質因數,應先找到一個最小的質數k,然后按下述步驟完成:
(1)如果這個質數恰等于n,則說明分解質因數的過程已經結束,打印出即可。
(2)如果n<>k,但n能被k整除,則應打印出k的值,并用n除以k的商,作為新的正整數你n,重復執行第一步。
(3)如果n不能被k整除,則用k+1作為k的值,重復執行第一步。
【程序5】
題目:利用條件運算符的嵌套來完成此題:學習成績>=90分的同學用a表示,60-89分之間的用b表示,60分以下的用c表示。
1.程序分析:(a>b)?a:b這是條件運算符的基本例子。
【程序6】
題目:輸入兩個正整數m和n,求其最大公約數和最小公倍數。
1.程序分析:利用輾除法。
【程序7】
題目:輸入一行字符,分別統計出其中英文字母、空格、數字和其它字符的個數。
1.程序分析:利用while語句,條件為輸入的字符不為'n'.【程序8】
題目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個數字。例如2+22+222+2222+22222(此時共有5個數相加),幾個數相加有鍵盤控制。
1.程序分析:關鍵是計算出每一項的值。
【程序9】
題目:一個數如果恰好等于它的因子之和,這個數就稱為“完數”。例如6=1+2+3.編程 找出1000以內的所有完數。
【程序10】
題目:一球從100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地時,共經過多少米?第10次反彈多高?
【程序11】
題目:有1、2、3、4個數字,能組成多少個互不相同且無重復數字的三位數?都是多少?
1.程序分析:可填在百位、十位、個位的數字都是1、2、3、4。組成所有的排列后再去 掉不滿足條件的排列。
【程序12】
題目:企業發放的獎金根據利潤提成。利潤(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,求應發放獎金總數?
1.程序分析:請利用數軸來分界,定位。注意定義時需把獎金定義成長整型。
【程序13】
題目:一個整數,它加上100后是一個完全平方數,再加上168又是一個完全平方數,請問該數是多少?
1.程序分析:在10萬以內判斷,先將該數加上100后再開方,再將該數加上268后再開方,如果開方后的結果滿足如下條件,即是結果。請看具體分析:
【程序14】
題目:輸入某年某月某日,判斷這一天是這一年的第幾天?
1.程序分析:以3月5日為例,應該先把前兩個月的加起來,然后再加上5天即本年的第幾天,特殊情況,閏年且輸入月份大于3時需考慮多加一天。
【程序15】
題目:輸入三個整數x,y,z,請把這三個數由小到大輸出。
1.程序分析:我們想辦法把最小的數放到x上,先將x與y進行比較,如果x>y則將x與y的值進行交換,然后再用x與z進行比較,如果x>z則將x與z的值進行交換,這樣能使x最小。
【程序16】
題目:輸出9*9口訣。
1.程序分析:分行與列考慮,共9行9列,i控制行,j控制列。
【程序17】
題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了一個 第二天早上又將剩下的桃子吃掉一半,又多吃了一個。以后每天早上都吃了前一天剩下 的一半零一個。到第10天早上想再吃時,見只剩下一個桃子了。求第一天共摘了多少。
1.程序分析:采取逆向思維的方法,從后往前推斷。
【程序18】
題目:兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽簽決定比賽名單。有人向隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比,請編程序找出三隊賽手的名單。
1.程序分析:判斷素數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除,則表明此數不是素數,反之是素數。
【程序19】
題目:打印出如下圖案(菱形)
*
***
******
********
******
***
*
1.程序分析:先把圖形分成兩部分來看待,前四行一個規律,后三行一個規律,利用雙重 for循環,第一層控制行,第二層控制列。
【程序20】
題目:有一分數序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數列的前20項之和。
1.程序分析:請抓住分子與分母的變化規律。
【程序21】
題目:求1+2!+3!+...+20!的和
1.程序分析:此程序只是把累加變成了累乘。
【程序22】
題目:利用遞歸方法求5!。
1.程序分析:遞歸公式:fn=fn_1*4!
【程序23】
題目:有5個人坐在一起,問第五個人多少歲?他說比第4個人大2歲。問第4個人歲數,他說比第3個人大2歲。問第三個人,又說比第2人大兩歲。問第2個人,說比第一個人大兩歲。最后問第一個人,他說是10歲。請問第五個人多大?
1.程序分析:利用遞歸的方法,遞歸分為回推和遞推兩個階段。要想知道第五個人歲數,需知道第四人的歲數,依次類推,推到第一人(10歲),再往回推。
【程序24】
題目:給一個不多于5位的正整數,要求:
一、求它是幾位數,二、逆序打印出各位數字。
【程序25】
題目:一個5位數,判斷它是不是回文數。即12321是回文數,個位與萬位相同,十位與千位相同。
【程序26】
題目:請輸入星期幾的第一個字母來判斷一下是星期幾,如果第一個字母一樣,則繼續 判斷第二個字母。
1.程序分析:用情況語句比較好,如果第一個字母一樣,則判斷用情況語句或if語句判斷第二個字母。
【程序27】
題目:求100之內的素數
【程序28】
題目:對10個數進行排序
1.程序分析:可以利用選擇法,即從后9個比較過程中,選擇一個最小的與第一個元素交換,下次類推,即用第二個元素與后8個進行比較,并進行交換。
【程序29】
題目:求一個3*3矩陣對角線元素之和
1.程序分析:利用雙重for循環控制輸入二維數組,再將a[i][i]累加后輸出。
【程序30】
題目:有一個已經排好序的數組。現輸入一個數,要求按原來的規律將它插入數組中。
1.程序分析:首先判斷此數是否大于最后一個數,然后再考慮插入中間的數的情況,插入后此元素之后的數,依次后移一個位置。
【程序31】
題目:將一個數組逆序輸出。
1.程序分析:用第一個與最后一個交換。
【程序32】
題目:取一個整數a從右端開始的4~7位。
程序分析:可以這樣考慮:
(1)先使a右移4位。
(2)設置一個低4位全為1,其余全為0的數。可用~(~0<<4)
(3)將上面二者進行&運算。
【程序33】
題目:打印出楊輝三角形(要求打印出10行如下圖)
1.程序分析:2 13 3 14 6 4 15 10 10 5 1
【程序34】
題目:輸入3個數a,b,c,按大小順序輸出。
1.程序分析:利用指針方法。
【程序35】
題目:輸入數組,最大的與第一個元素交換,最小的與最后一個元素交換,輸出數組。
【程序36】
題目:有n個整數,使其前面各數順序向后移m個位置,最后m個數變成最前面的m個數
【程序37】
題目:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。
【程序38】
題目:寫一個函數,求一個字符串的長度,在main函數中輸入字符串,并輸出其長度。
【程序39】
題目:編寫一個函數,輸入n為偶數時,調用函數求1/2+1/4+...+1/n,當輸入n為奇數時,調用函數1/1+1/3+...+1/n(利用指針函數)
【程序40】
題目:字符串排序。
【程序41】
題目:海灘上有一堆桃子,五只猴子來分。第一只猴子把這堆桃子憑據分為五份,多了一個,這只猴子把多的一個扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一個,它同樣把多的一個扔入海中,拿走了一份,第三、第四、第五只猴子都是這樣做的,問海灘上原來最少有多少個桃子?
【程序42】
題目:809*??=800*??+9*??+1 其中??代表的兩位數,8*??的結果為兩位數,9*??的結果為3位數。求??代表的兩位數,及809*??后的結果。
【程序43】
題目:求0—7所能組成的奇數個數。
【程序44】
題目:一個偶數總能表示為兩個素數之和。
【程序45】
題目:判斷一個素數能被幾個9整除
【程序46】
題目:兩個字符串連接程序
【程序47】
題目:讀取7個數(1—50)的整數值,每讀取一個值,程序打印出該值個數的*。
【程序48】
題目:某個公司采用公用電話傳遞數據,數據是四位的整數,在傳遞過程中是加密的,加密規則如下:每位數字都加上5,然后用和除以10的余數代替該數字,再將第一位和第四位交換,第二位和第三位交換。
【程序49】
題目:計算字符串中子串出現的次數
【程序50】
題目:有五個學生,每個學生有3門課的成績,從鍵盤輸入以上數據(包括學生號,姓名,三門課成績),計算出平均成績,況原有的數據和計算出的平均分數存放在磁盤文件“stud”中。