上海應(yīng)用技術(shù)學(xué)院銀行信貸系統(tǒng)課程設(shè)計報告_第1頁
上海應(yīng)用技術(shù)學(xué)院銀行信貸系統(tǒng)課程設(shè)計報告_第2頁
上海應(yīng)用技術(shù)學(xué)院銀行信貸系統(tǒng)課程設(shè)計報告_第3頁
上海應(yīng)用技術(shù)學(xué)院銀行信貸系統(tǒng)課程設(shè)計報告_第4頁
上海應(yīng)用技術(shù)學(xué)院銀行信貸系統(tǒng)課程設(shè)計報告_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上上海應(yīng)用技術(shù)學(xué)院課程設(shè)計2013 2014學(xué)年第二學(xué)期設(shè)計題目 銀行信貸管理系統(tǒng) 院(系) 計算機(jī)科學(xué)與信息工程學(xué)院 專 業(yè) 班 級 學(xué)號 學(xué)生姓名 設(shè)計時間 指導(dǎo)教師 提交日期 上海應(yīng)用技術(shù)學(xué)院課程設(shè)計任務(wù)書課程名稱程序設(shè)計語言課程設(shè)計課程代碼B設(shè)計題目銀行信貸管理系統(tǒng)題目序號6設(shè)計時間學(xué)院計算機(jī)科學(xué)與信息工程專業(yè)班級一、 課程設(shè)計任務(wù)(條件)、具體技術(shù)參數(shù)(指標(biāo))1. 在指導(dǎo)書提供的課程設(shè)計題目中選擇一題或自選(但需經(jīng)過指導(dǎo)教師認(rèn)可)2. 每個題目限一人完成,題目選定后不可更換。3. 用戶提供的主操作界面應(yīng)該方便用戶的操作。4. 最后提交的課程設(shè)計成果包括:a)課

2、程設(shè)計報告電子稿。c)源程序文件。d)可執(zhí)行程序文件。二、 對課程設(shè)計成果的要求(包括課程設(shè)計說明書、圖紙、圖表、實物等軟硬件要求)1. 分析課程設(shè)計題目的要求;2. 寫出詳細(xì)設(shè)計說明;3. 編寫程序代碼,調(diào)試程序使其能正確運行;4. 設(shè)計完成的軟件要便于操作和使用,有整齊、美觀的使用界面;5. 設(shè)計完成后提交課程設(shè)計報告和源代碼文件的電子文檔。三、 課程設(shè)計工作進(jìn)度計劃:第一天 選擇課程設(shè)計題目,分析課題的要求,確定設(shè)計方案;第二天 按功能模塊編寫詳細(xì)設(shè)計說明;第三天 繪制程序流程圖;第四七天 編寫與調(diào)試程序;第八天 寫課程設(shè)計報告; 第九天 提交課程設(shè)計報告; 第十天 面試或答辯。四、 主

3、要參考資料 1譚浩強(qiáng)C程序設(shè)計(第四版)北京:清華大學(xué)出版社,2010 2譚浩強(qiáng)C程序設(shè)計題解與上機(jī)指導(dǎo)(第四版)北京:清華大學(xué)出版社,20103 Herbert SchildtC語言大全(第四版)北京:電子工業(yè)出版社, 20044Samuel P.Harbison ,Guy L.SteeleC語言參考手冊(第5版)北京:機(jī)械工業(yè)出版社,20035程序設(shè)計語言課程設(shè)計指導(dǎo)書指導(dǎo)教師(簽名): 教研室主任(簽名): 2014年 6 月30日 2014年6月30日 目錄設(shè)計目的題目六 銀行信貸管理系統(tǒng)1. 設(shè)計要求: 基本功能: a) 申請貸款 b) 還貸 c) 查詢貸款記錄 d) 查詢還貸記錄

4、拓展功能: 采用文件形式對貸款和還款記錄進(jìn)行操作,包括: c) 寫入文件 d) 讀取文件 創(chuàng)新(自擬)功能: 程序?qū)崿F(xiàn)的其它功能由個人自擬。2. 設(shè)計要求具體說明 基本功能: 􀁺 貸款記錄中包含以下數(shù)據(jù): 貸款編號、貸款人身份證號碼、貸款人姓名、貸款金額、貸款年限 􀁺 還貸記錄中包含以下數(shù)據(jù): 還款編號、還款人身份證號碼、還款人姓名、還款金額、所還貸款編號 􀁺 申請貸款 要求輸入貸款編號、貸款人身份證號碼、貸款人姓名、貸款金額、貸款年限。 􀁺 還貸 要求輸入一個貸款編號(要求對貸款編號進(jìn)行檢查,如果沒有這條貸款,顯示輸入編

5、號錯誤),還款編號、還款人身份證號碼、還款人姓名、還款金額、所還貸款編號. 要求還款編號不能重復(fù)。􀁺 查詢貸款記錄 要求輸入貸款人身份證號碼,先查詢是否存在貸款,如果存在顯示該貸款人的所有貸款記錄,如果不存在顯示無記錄。􀁺 查詢還貸記錄 要求輸入一個貸款編號(要求對貸款編號進(jìn)行檢查,如果沒有這條貸款,顯示輸入編號錯誤),查看對該貸款的所有還貸信息。拓展功能 要求對上述輸入的貸款和還貸記錄進(jìn)行文件保存,下次進(jìn)入系統(tǒng)時從文件讀出數(shù)據(jù)。 3. 提示 定義合適的結(jié)構(gòu)體類型,使用鏈表或數(shù)組的方式組織數(shù)據(jù)。 2 功能描述2.1模塊功能一基本功能:貸款記錄中包含以下數(shù)據(jù):

6、貸款編號、貸款人身份證號碼、貸款人姓名、貸款金額、貸款年限還貸記錄中包含以下數(shù)據(jù):還款編號、還款人身份證號碼、還款人姓名、還款金額、所還貸款編號 申請貸款要求輸入貸款編號、貸款人身份證號碼、貸款人姓名、貸款金額、貸款年限。還貸要求輸入一個貸款編號(要求對貸款編號進(jìn)行檢查,如果沒有這條貸款,顯示輸入編號錯誤),還款編號、還款人身份證號碼、還款人姓名、還款金額、所還貸款編號. 要求還款編號不能重復(fù)。查詢貸款記錄要求輸入貸款人身份證號碼,先查詢是否存在貸款,如果存在顯示該貸款人的所有貸款記錄,如果不存在顯示無記錄。查詢還貸記錄要求輸入一個貸款編號(要求對貸款編號進(jìn)行檢查,如果沒有這條貸款,顯示輸入編

7、號錯誤),查看對該貸款的所有還貸信息。二拓展功能要求對上述輸入的貸款和還貸記錄進(jìn)行文件保存,下次進(jìn)入系統(tǒng)時從文件讀出數(shù)據(jù)。2.2流程圖 開始提示輸入貸款信息檢查申請是否合法放入結(jié)構(gòu)體數(shù)組中YN結(jié)束圖1 添加(貸款客戶信息)開始提示輸入貸款編號檢查是否存在貸款編號輸入還款編號和還款信息檢查信息的合法性輸入還款金額檢查金額額度是否合理還款成功放入結(jié)構(gòu)體數(shù)組中結(jié)束YNYNYN 圖2 添加(還貸信息)開始提示檢查是否存在結(jié)束YN輸出 無記錄結(jié)束輸入貸款編號調(diào)出貸款用戶信息輸出貸款用戶信息 圖3 查詢(貸款基本信息)開始提示檢查是否存在結(jié)束YN輸出 編號錯誤結(jié)束輸入還款編號調(diào)出還款用戶信息輸出還款用戶信

8、息圖4 查詢(還貸信息)3 總體設(shè)計 3.1 功能模塊設(shè)計 3.1.1 添加功能設(shè)計: 添加分為兩部分添加貸款用戶基本信息和添加還貸用戶基本信息。添加貸款基本信息中要求輸入貸款編號、貸款人身份證號碼、貸款人姓名、貸款金額、貸款年限。添加還貸用戶基本信息要求輸入一個貸款編號(要求對貸款編號進(jìn)行檢查,如果沒有這條貸款,顯示輸入編號錯誤),還款編號、還款人身份證號碼、還款人姓名、還款金額、所還貸款編號. 要求還款編號不能重復(fù)。其中用結(jié)構(gòu)體來建立輸入的用戶信息的形式。兩個結(jié)構(gòu)體間用靜態(tài)鏈表連接,使其聯(lián)系起來。3.1.2 查詢功能設(shè)計:查詢貸款信息可以用輸入貸款人身份證號碼來進(jìn)行,先查詢是否存

9、在貸款,如果存在顯示該貸款人的所有貸款記錄,如果不存在顯示無記錄。查詢還貸記錄通過輸入貸款編號(要求對貸款編號進(jìn)行檢查,如果沒有這條貸款,顯示輸入編號錯誤)進(jìn)行,查看對該貸款的所有還貸信息。 3.2 數(shù)據(jù)結(jié)構(gòu)設(shè)計 先建立兩個結(jié)構(gòu)體studen1,student2。再設(shè)立全局變量,建立循環(huán)以驗證輸入的合法性,全局變量累加,全局變量累減。 3.3 函數(shù)功能描述 3.3.1 #include <stdio.h>在使用標(biāo)準(zhǔn)函數(shù)庫中的輸入輸出函數(shù)時,編譯系統(tǒng)要求程序提供有關(guān)的信息(例如對這些輸入輸出函數(shù)的聲明),#include<>的作用就是用來提供這些信息的,stdio.h是C

10、編譯系統(tǒng)提供的一個文件名,stdio是“standard input & output”的縮寫,即有關(guān)標(biāo)準(zhǔn)輸入輸出的信息。 在程序中用到系統(tǒng)提供的標(biāo)準(zhǔn)函數(shù)庫中的輸入輸出函數(shù)時,應(yīng)在程序的開頭寫上一行:#include"stdio.h"或者是#include<stdio.h>,這樣才能調(diào)用庫函數(shù)3.3.2 #include<ctype.h>。#include<ctype.h> 是在調(diào)用字符函數(shù)時,在源文件中包含的頭文件。字符函數(shù)如:int isspace(int ch);檢查ch是否為空格制表或換行字符?!癱type”中c為字符型c

11、har的縮寫,type 為類型。 3.3.3#include<string.h>string.h是個頭文件,里面寫的是關(guān)于字符串操作的一些基本函數(shù)。當(dāng)程序中涉及對字符串的操作時,會用到這個頭文件里面的函數(shù)。所以要把它include(包含)進(jìn)來。3.3.4 #include<stdlib.h>stdlib.h里面定義了五種類型、一些宏和通用工具函數(shù)。類型例如size_t、wchar_t、div_t、ldiv_t和lldiv_t;宏例如EXIT_FAILURE、EXIT_SUCCESS、RAND_MAX和MB_CUR_MAX等等;常用的函數(shù)如malloc()、calloc(

12、)、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等等。具體的內(nèi)容可以打開編譯器的include目錄里面的stdlib.h頭文件看看。4 程序?qū)崿F(xiàn) 4.1 源碼分析#include <stdio.h>#include <stdlib.h>#include <string.h>FILE *fp1=fopen("dk.txt","a+"); FILE *fp2=fopen("hk.txt","a+"); ch

13、ar m_id10="admin"char m_pass10=""int d_num=0,h_num=0;struct Dkint num;char id20;char name20;int money;float re_money;int year;struct Dk *next;struct Dk *last;*d_p1,*d_p2,*d_head,*d_end;struct Hkint num;char id20;char name20;int money;float re_money;int d_num;struct Hk *next;struc

14、t Hk *last;*h_p1,*h_p2,*h_head,*h_end;int yhyz();void menu(int x);void cx(int n);void dk_cx();void hk_cx();void quit();void select1(int n);void select2(int n);void dk();void hk();void w_f();void r_f();int main()printf("歡迎來到銀行信貸管理系統(tǒng)!n");getchar();system("cls");if(d_head=NULL)d_p1=

15、(struct Dk*)malloc(sizeof(struct Dk);d_head=d_p1;d_end=d_p1;if(h_head=NULL)h_p1=(struct Hk*)malloc(sizeof(struct Hk);h_head=h_p1;h_end=h_p1;r_f();while(1)menu(0);int yhyz()char id10,pass10;printf("用戶名:"); scanf("%s",id);if(strcmp(id,"admin")=0)printf("密碼:"); s

16、canf("%s",pass);if(strcmp(pass,"")=0)return 1;elseprintf("密碼錯誤n"); return 0;elseprintf("用戶名錯誤n"); return 0;void menu(int x)int n;if(x=0)printf("n1.管理員登陸n"); printf("2.申請貸款n"); printf("3.償還貸款n"); printf("4.貸款查詢n"); printf

17、("5.還款查詢n"); printf("0.退出系統(tǒng)n"); printf("請輸入功能序號n"); fflush(stdin);scanf("%d",&n);select1(n);elseprintf("1.導(dǎo)入文件n"); printf("2.導(dǎo)出文件n"); printf("3.顯示貸款n");printf("4.顯示還款n");printf("0.退出管理n"); fflush(stdin);pri

18、ntf("請輸入功能序號n"); scanf("%d",&n);select2(n); void select1(int n)switch(n)case 1: menu(yhyz();break;case 2: dk();break;case 3: hk();break;case 4: dk_cx();break;case 5: hk_cx();break;case 0: quit();break;default :printf("輸入錯誤n");break; menu(0);void select2(int n)switch

19、(n)case 1: w_f();menu(1);break;case 2: r_f();menu(1);break;case 3: cx(1);menu(1);break;case 4: cx(0);menu(1);break;case 0: menu(0);break;default :printf("輸入錯誤");menu(yhyz();break; void cx(int n)if(n=1)printf("編號t姓名t身份證t金額t年限t欠款tn"); for(d_p2=d_head->next;d_p2!=d_end;d_p2=d_p2-

20、>next) printf("%dt",d_p2->num); printf("%st",d_p2->name); printf("%st",d_p2->id); printf("%dt",d_p2->money); printf("%dt",d_p2->year); printf("%.ftn",d_p2->re_money); elseprintf("編號t姓名t身份證t金額t貸款編號tn");for(h_p2

21、=h_head->next;h_p2!=h_end;h_p2=h_p2->next)printf("%dt",h_p2->num);printf("%st",h_p2->name); printf("%st",h_p2->id); printf("%dt",h_p2->money); printf("%dtn",h_p2->d_num);getchar();system("cls");void dk_cx()char t20;int

22、i=1;printf("請輸入貸款人身份證號碼n");scanf("%s",t);for(d_p2=d_head;d_p2!=NULL;d_p2=d_p2->next)if(strcmp(t,d_p2->id)=0)break;if(d_p2=NULL) printf("該身份證號碼不存在n");elseprintf("編號t姓名t身份證t金額t年限t欠款tn"); for(d_p2=d_head;d_p2!=NULL;d_p2=d_p2->next)if(strcmp(t,d_p2->id

23、)=0)printf("%dt",d_p2->num);printf("%st",d_p2->name); printf("%st",d_p2->id); printf("%dt",d_p2->money); printf("%dt",d_p2->year); printf("%.ftn",d_p2->re_money);getchar(); system("cls");void hk_cx()int t;char y;

24、 printf("請輸入貸款編號n"); fflush(stdin);scanf("%d",&t);if(t>d_num|t<=0)printf("輸入錯誤,請重新輸入貸款編號n"); hk_cx();elseprintf("編號t姓名t身份證t金額t貸款編號tn");for(h_p2=h_head;h_p2!=NULL;h_p2=h_p2->next)if(t=h_p2->d_num) printf("%dt",h_p2->num);printf(&quo

25、t;%st",h_p2->name); printf("%st",h_p2->id); printf("%dt",h_p2->money); printf("%dtn",h_p2->d_num);getchar(); system("cls"); void quit()exit(0);void dk()d_p2=d_end;printf("請輸入貸款人姓名n"); scanf("%s",d_p2->name);printf("

26、請輸入貸款人身份證號碼n"); scanf("%s",d_p2->id);printf("請輸入貸款金額n"); fflush(stdin);scanf("%d",&d_p2->money);printf("請輸入貸款年限(1-10)n"); fflush(stdin);scanf("%d",&d_p2->year);if(d_p2->year<=0|d_p2->year>10)printf("輸入錯誤,請重新輸入貸款

27、年限(1-10)n"); dk();elsed_num+;d_p2->num=d_num;switch(d_p2->year) case 1: d_p2->re_money=1.2*(d_p2->money);break;case 2: d_p2->re_money=1.2*(d_p2->money);break;case 3: d_p2->re_money=1.2*(d_p2->money);break;case 4: d_p2->re_money=1.5*(d_p2->money);break; case 5: d_p2

28、->re_money=1.5*(d_p2->money);break; default: d_p2->re_money=1.5*(d_p2->money);break; d_p1=(struct Dk*)malloc(sizeof(struct Dk);d_p1->last=d_p2;d_p2->next=d_p1;d_p2=d_p1;d_end=d_p2;void hk()int t;printf("請輸入貸款編號n"); fflush(stdin);scanf("%d",&t);if(t>d_num|

29、t<=0)printf("輸入錯誤,請重新輸入貸款編號n"); hk();elseh_p2=h_end;h_num+;h_p2->num=h_num;h_p2->d_num=t;for(d_p2=d_head;d_p2!=NULL;d_p2=d_p2->next)if(d_p2->num=h_p2->d_num) break;printf("請輸入還款人姓名n"); scanf("%s",h_p2->name);printf("請輸入還款人身份證號碼n"); scanf(&

30、quot;%s",h_p2->id);printf("請輸入還款金額n"); fflush(stdin);scanf("%d",&h_p2->money);while(h_p2->money>d_p2->re_money)fflush(stdin);printf("超出范圍,請重新輸入還款金額n"); scanf("%d",&h_p2->money);d_p2->re_money=d_p2->re_money-h_p2->money;h_p1=(struct Hk*)malloc(sizeof(struct Hk);h_p1->last=h_p2;h_p2->next=h_p1;h_p2=h_p1;h_end=h_p2;void w_f()for(d_p2=d_head;d_p2->next!=NULL;d_p2=d_p2->next)fwrite(d_p2,sizeof(Dk),1,fp

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論