一,程式簡單功能說明:
1.假設家庭起始的生活基本金為10000元。
2.每次登記收入(進入2)後,收入的金額應累計生活基本金上,並記錄本次收入明細,以便後續查詢。
3.每次登記支出(進入3)後,支出的金額應從生活基本金上扣除,並記錄本次支出明細,以便後續查詢。
4.查詢收支明細(進入1)後,將顯示所有的收支出明細列表。
二,主要涉及以下知識點
1.區域性變數和基本資料型別;我在該程式中用了方法呼叫,因此還有全域性變數的用法;在此我用了兩種,不用方法的呼叫初學者看看就行,重點理解方法的呼叫。
2.迴圈語句(while)。
3.分支語句(switch)。
4.方法呼叫和返回值的接收。
5.簡單的螢幕輸出格式控制。
三,程式實現
1 package demo02;
import com.myself;
public class familyaccount
while (agin) else else
system.out.println("你還沒有支出和收入,現在餘額:" + balance);
system.out.println("-----------------------------------");
continue;
case 4:
system.out.print("是否退出:是的話輸入y,否的話輸n:");
string yes = myself.getstringonescanner();//獲取鍵盤輸入選項(方法在自寫方法庫中)
if (yes.equals("y")) else
continue;
case 2:
system.out.print("本次收入金額:");
int in = myself.getintonescanner();//獲取鍵盤輸入金額(方法在自寫方法庫中)
balance = balance + in;
system.out.print("本次收入說明:");
string string = myself.getstringonescanner();//獲取鍵盤輸入字串(方法在自寫方法庫中)
income = "收入\t" + balance + "\t" + in + "\t" + string;
continue;
case 3:
system.out.print("本次支出金額:");//獲取鍵盤輸入金額(方法在自寫方法庫中)
int out = myself.getintonescanner();
balance = balance - out;
system.out.print("本次支出說明:");//獲取鍵盤輸入字串(方法在自寫方法庫中)
string outstring = myself.getstringonescanner();
outcome = "支出\t" + balance + "\t" + out + "\t" + outstring;
continue;
default:
break;}}
}system.out.println("over");
}//列印主介面方法體
public static void mainprint()
}
2.package demo02;
import com.myself;
public class familyaccount2
//迴圈開始
while (agin) else else
system.out.println("你還沒有支出和收入,現在餘額:" + balance);
system.out.println("-----------------------------------");
continue;
case 4:
system.out.print("是否退出:是的話輸入y,否的話輸n:");
string yes = myself.getstringonescanner();
if (yes.equals("y")) else //判斷是否結束迴圈
continue;
case 2:
income = inputcome();//收入方法體
continue;
case 3:
outcome = outputcome();//支出方法體
continue;
default:
break;}}
}system.out.println("over");
}//列印介面方法體
public static void mainprint()
//支出方法體
public static string outputcome()
//收入方法體
public static string inputcome()
}四,執行結果
進入程式主介面
選擇2,進入收入功能
選擇3,進入支出功能
選擇1,進入支出明細介面
選擇4,退出程式
五,改進
1,利用io輸入輸出流將每一次訊息存進檔案中,可以在不退出程式的時候,多次執行且資料不被覆蓋。
2,利用資料庫,原因如上。
*************************************天意無情*********************************
C 基於介面的排序
需要注意的是int32,int16 string,decimal等資料型別已經實現了icomparable介面 因此對於複雜的資料型別進行排序的時候才考慮讓資料型別繼承自icomparable介面。icomparable介面只有乙個方法compareto。因此還要實現compareto方法。comp...
基於Ifilter介面的文件解析
ifilter介面是windows自帶的文件解析的介面,windows search,sql 檢索,share point等使用的都是該介面,目前該介面在win7 和 xp系統中都可使用。ifilter介面派生於iunknow,所以自帶函式queryinte ce,addeef,release,其主...
基於Ifilter介面的文件解析 2
本節是對 基於ifilter介面的文件解析 的補充,根據loadfilter的原理重寫該函式,重寫後不需要安裝office軟體,只需取出相應的ifilter元件,通過自行進行登錄檔註冊就可以了。loadfilter的流程如下 以.pdf為例,開啟登錄檔 1.在hkey local machine s...