導航:首頁 > 產品平台 > c語言儲蓄綜合平台1

c語言儲蓄綜合平台1

發布時間:2021-08-01 04:22:13

㈠ 編寫一個關於「ATM系統」c語言程序。 要求,1功能:存錢,取錢,轉賬,修改密碼,只要現實中有的都得有,

下面的是我自己寫的一個, 裡面很多細節都沒有進行細致的處理, 只是粗略的實現了基本的功能
後面有我的測試數據, 希望能有幫助

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct _account
{
char * UID;
char * pwd;
int balance;
char * UName;
}ACCOUNT, * PACCOUNT;

void InitAccount(PACCOUNT pA); // 初始化賬戶
void showAccount(ACCOUNT A, bool flag); // 顯示賬戶信息, flag表示是否顯示全部信息. 如果是true則需要輸入用戶密碼
bool deposite(PACCOUNT pA); // 存錢, 內部需要密碼驗證並輸入金額
bool withDraw(PACCOUNT pA); // 取錢, 內部需要密碼驗證並輸入金額
bool transfer(PACCOUNT pA, PACCOUNT pB); // 轉賬, 需要密碼驗證, 並輸入金額
bool conct(PACCOUNT pA, int chose, PACCOUNT pB); // 處理, 就是根據菜單項處理用戶的操作選擇
void modifyPwd(PACCOUNT pA); // 更改用戶密碼
bool Authentication(PACCOUNT pA); // 密碼認證, 3次機會輸入密碼
void memFree(PACCOUNT pA, PACCOUNT pB); // 在堆上分配的內存的釋放

int main(void)
{
// 建立兩個賬戶, 分別是操作賬戶和接受轉賬的賬戶
PACCOUNT pMainAcc = (PACCOUNT)malloc(sizeof(ACCOUNT));
PACCOUNT pAssistAcc = (PACCOUNT)malloc(sizeof(ACCOUNT));

// 初始化兩個賬戶的信息
InitAccount(pMainAcc);
InitAccount(pAssistAcc);

// 進行菜單控制, 提供用戶操作
int chose = -1;
while(chose != 0)
{
printf("\n1. 存錢\t2. 取錢\t3. 轉賬\t4. 更改密碼\t5. 顯示賬戶信息\t0.退出\n");
scanf("%d", &chose);

conct(pMainAcc, chose, pAssistAcc);
}

return 0;
}

bool conct(PACCOUNT pA, int chose, PACCOUNT pB)
{
bool rtnflag = true;
switch(chose)
{
case 1:
if(!deposite(pA))
printf("操作失敗!");
else
printf("操作成功!");
break;

case 2:
if(!withDraw(pA))
printf("操作失敗!");
else
printf("操作成功!");
break;

case 3:
if(!transfer(pA, pB))
printf("操作失敗!");
else
printf("操作成功!");
break;

case 4:
modifyPwd(pA);
break;

case 5:
showAccount(*pA, true);
break;

case 0:
rtnflag = false;
memFree(pA, pB);
break;
}
return rtnflag;
}

void InitAccount(PACCOUNT pA)
{
printf("請初始化賬戶名, 密碼, 姓名, 賬戶余額.\n");
pA->UID = (char *)malloc(sizeof(char)*20);
pA->pwd = (char *)malloc(sizeof(char)*20);
pA->UName = (char *)malloc(sizeof(char)*20);
gets(pA->UID);
gets(pA->pwd);
gets(pA->UName);
scanf("%d", &pA->balance);
getchar();
return ;
}

void showAccount(ACCOUNT A, bool flag)
{
if(flag)
{
int i = 0;
getchar();
char * tmpPwd = (char *)malloc(sizeof(char)*20);
while(strcmp(tmpPwd, A.pwd))
{
printf("請輸入賬戶%s的密碼:\n", A.UID);
gets(tmpPwd);
if(++i > 3)
{
printf("對不起, 密碼輸入錯誤!只能顯示部分信息!\n");
showAccount(A, false);
free(tmpPwd);
return ;
}
}
printf("賬戶信息如下:\n賬戶名\t賬戶密碼\t賬戶余額\t姓名\n");
printf("%6s\t%8s%8d\t%8\ts\n", A.UID, A.pwd, A.balance, A.UName);
free(tmpPwd);
}
else
{
printf("賬戶信息如下:\n賬戶名\t賬戶余額\t姓名\n");
printf("%6s\t%8d\t%4s\n", A.UID, A.balance, A.UName);
}

return ;
}

bool deposite(PACCOUNT pA)
{
if(!Authentication(pA))
return false;
int val = 0;
printf("請輸入金額:\n");
scanf("%d", &val);
pA->balance += val;

return true;
}

bool withDraw(PACCOUNT pA)
{
if(!Authentication(pA))
return false;

printf("請輸入金額");
int val = 0;
scanf("%d", &val);

if(pA->balance >= val)
{
pA->balance -= val;
}
else
{
printf("對不起, 余額不足!");
return false;
}

return true;
}

bool transfer(PACCOUNT pA, PACCOUNT pB)
{
if(!Authentication(pA))
return false;
printf("請輸入金額");
int val = 0;
scanf("%d", &val);

if(pA->balance >= val)
{
pA->balance -= val;
pB->balance += val;
}
else
{
printf("對不起, 余額不足!");
return false;
}

return true;
}

void modifyPwd(PACCOUNT pA)
{
if(Authentication(pA))
{
printf("請輸入新的密碼!");
free(pA->pwd);
pA->pwd = (char *)malloc(sizeof(char)*20);
gets(pA->pwd);
}
else
{
printf("對不起, 您沒有許可權進行密碼修改!");
}
}

bool Authentication(PACCOUNT pA)
{
getchar();
int i = 0;
char * tmpPwd = (char *)malloc(sizeof(char)*20);
while(strcmp(tmpPwd, pA->pwd))
{
printf("請輸入%s的密碼, 3次機會:\n", pA->UID);
gets(tmpPwd);
if(++i == 3)
{
return false;
}
}

return true;
}

void memFree(PACCOUNT pA, PACCOUNT pB)
{
free(pA);
free(pB);

return ;
}

/*
運行環境: VC6.0

請初始化賬戶名, 密碼, 姓名, 賬戶余額.
wed
qweasd
wednesday
800
請初始化賬戶名, 密碼, 姓名, 賬戶余額.
hu
sad
huni
200

1. 存錢 2. 取錢 3. 轉賬 4. 更改密碼 5. 顯示賬戶信息 0.退出
1
請輸入wed的密碼, 3次機會:
qwe
請輸入wed的密碼, 3次機會:
qweasd
請輸入金額:
54
操作成功!
1. 存錢 2. 取錢 3. 轉賬 4. 更改密碼 5. 顯示賬戶信息 0.退出
5
請輸入賬戶wed的密碼:
qwe
請輸入賬戶wed的密碼:
qweasd
賬戶信息如下:
賬戶名 賬戶密碼 賬戶余額 姓名
wed qweasd 854 s

1. 存錢 2. 取錢 3. 轉賬 4. 更改密碼 5. 顯示賬戶信息 0.退出
4
請輸入wed的密碼, 3次機會:
123
請輸入wed的密碼, 3次機會:
qweasd
請輸入新的密碼!123qwe

1. 存錢 2. 取錢 3. 轉賬 4. 更改密碼 5. 顯示賬戶信息 0.退出
1
請輸入wed的密碼, 3次機會:
qweasd
請輸入wed的密碼, 3次機會:
123qwe
請輸入金額:
43
操作成功!
1. 存錢 2. 取錢 3. 轉賬 4. 更改密碼 5. 顯示賬戶信息 0.退出
5
請輸入賬戶wed的密碼:
123qwe
賬戶信息如下:
賬戶名 賬戶密碼 賬戶余額 姓名
wed 123qwe 897 s

1. 存錢 2. 取錢 3. 轉賬 4. 更改密碼 5. 顯示賬戶信息 0.退出
0
Press any key to continue

*/

㈡ 跪求銀行定期儲蓄管理系統的c語言程序代碼,急!!!

呵呵 以前有人編寫過,自己查一下吧

㈢ 請大家幫忙用C語言做一個 活期儲蓄帳目管理 要求在詳細提問里,謝謝了

說吧 怎麼賄賂我,要不,你懂的,既然被我看見了,不賄賂一下,咱數據結構老師也會很快看見滴

㈣ 用C語言編一個程序,建立一個簡單的銀行帳戶管理系統

#include <stdio.h> #include <string.h> struct information { char account[20]; char IDcardNum; char workUint; char homeAddress; float money; char cardNum; long int password; }; void openAccount(); { cardNum++; user[cardNum].cardNum = cardNum; printf("請輸入您的姓名:"); gets(user[cardNum].account); printf("請輸入您的身份證號:"); gets(user[cardNum].IDcardNum); printf("請輸入您的工作單位:"); gets(user[cardNum].workUnit); print("請輸入您的家庭住址:"); gets(user[cardNum].homeAddress); printf("請輸入您的密碼:"); gets(user[cardNum].password); printf("請輸入您要存入的金額:"); scanf("%d",user[cardNum].money); //寫入文件out.txt中,寫入後,游標移至下一行 read();//讀取文件 write(); //寫入文件 cardNum++; } void deposit(); { int money; printf("請輸入您的卡號:"); scanf("%d",&cardNum); printf("請輸入您要存入的金額:"); scanf("%f",money); user[cardNum].money = user[cardNum].money + money; printf("您現在賬戶中的余額是¥%f",user[cardNum].money); } void withdraw(); { int money; printf("請輸入您的卡號:"); scanf("%d",&cardNum); printf("請輸入您要存入的金額:"); scanf("%f",money); user[cardNum].money = user[cardNum].money - money; printf("您現在賬戶中的余額是¥%f",user[cardNum].money); } void changeInformation(); { printf("請輸入您的卡號:"); scanf("%d",&cardNum); user[cardNum].cardNum = cardNum; printf("請輸入您的姓名:"); gets(user[cardNum].account); printf("請輸入您的身份證號:"); gets(user[cardNum].IDcardNum); printf("請輸入您的工作單位:"); gets(user[cardNum].workUnit); print("請輸入您的家庭住址:"); gets(user[cardNum].homeAddress); printf("請輸入您的密碼:"); gets(user[cardNum].password); printf("請輸入您要存入的金額:"); scanf("%d",user[cardNum].money); //寫入文件out.txt中,寫入後,游標移至下一行 read();//讀取文件 write(); //寫入文件 } void reportLoss(); { } void closeAccount(); { } void read(); { } void write(); { } int main() { int i; unsigned long int cardNum = 00001; information user[cardNum]; printf("請您選擇要進行的操作:\n"); printf("------------------------------------------------------\n"); printf("1、開戶/辦卡 2、存款 3、取款 4、修改信息 5、掛失 6、銷戶\n"); printf("------------------------------------------------------\n"); scanf("%d",&i); if(i < 1 || i > 6) printf("ERROR!\n"); else { switch(i) { case 1 : openAccount(); break; case 2 : deposit(); break; case 3 : withdraw(); break; case 4 : changeInformation(); break; case 5 : reportLoss(); break; case 6 : closeAccount(); break; } } return 0; } 沒有寫完,樓主可以參考一下!

㈤ 1. 建立一個簡單的C語言成績存儲管理系統

我有類似源代碼

㈥ 求c語言實驗代碼和詳解,要求是銀行儲蓄系統,要能提供以下幾個基本功能: (1) 工作人員根據口令進

/*時間有限bug應該蠻多沒改多少,操作不難只是麻煩了點畢竟技術有限,不少要求未完成你可以參考一下
事先在工程目錄下創建001.txt作為存單文件
寫入的順序是,存期以月為單位
存單編號 儲戶姓名 身份證編號 住址 聯系電話 存款金額 存期 密碼
參考數據如下,直接復制,最後不要加換行
1001 張三 340755199212050866 花園路22號 13955667788 20000 48 123321
1002 李四 340866199305252233 逗比小區2棟11號 13155669988 3000 20 123321
1003 王五 34000000000000000X 沿江路75號 18666667777 200 2 123321
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
//以下,利率
#define r1 0.0035//活期,三個月以下默認活期
#define r2 0.0135//三個月
#define r3 0.0155//半年
#define r4 0.0175//一年
#define r5 0.0235//兩年
typedef struct Check//賬單結構體
{
//存單編號,儲戶姓名,身份證編號,住址,聯系電話,存款金額,存期,密碼
char num[10];
char holder[8];
char ID[20];
char address[30];
char tel[15];
float money;
int time;//存期,單位 月
//int rate;//感覺利率沒有必要加入
char pass[8];
}check;

check a[20];//存單數組
char command[10]="123654";//登陸口令
int sum;//存單數目

void menu();
void add();
void search();
void alter();
void coalter();
void main_menu();

void init()//初始化,讀入txt數據
{
FILE *p;
int i=0;
p=fopen("001.txt","r");
if(!p)
{
return;
}
while(!feof(p))
{
fscanf(p,"%s%s%s%s%s%f%d%s",a[i].num,a[i].holder,a[i].ID,a[i].address,a[i].tel,&a[i].money,&a[i].time,a[i].pass);
/*if(a[i].time<3)a[i].rate=r1;
else if(a[i].time<6)a[i].rate=r2;
else if(a[i].time<12)a[i].rate=r3;
else if(a[i].time<24)a[i].rate=r4;
else a[i].rate=r5;*/
i++;
}
sum=i;//記錄賬單數目
fclose(p);
}

int main()//main函數
{
init();
main_menu();
}

void main_menu()//登陸界面
{
system("cls");
char password[10];
printf("======歡迎使用銀行系統======\n\n\n請輸入登陸口令:");
while(1)
{
scanf("%s",password);
if(strcmp(password,command)==0)
{
menu();
}
else
printf("口令錯誤請重新輸入:");
}
}

void menu()//主界面
{
system("cls");
char c;
printf("======****選擇操作****======\n\n");
printf("\t1.存單錄入\n");
printf("\t2.存單查詢\n");
printf("\t3.儲戶操作\n");
printf("\t4.口令修改\n");
printf("\t5.返回登陸\n");
printf("\t選擇:");
scanf("%c",&c);
scanf("%c",&c);
if(c>='1'&&c<='5')
{
switch(c)
{
case '1':add();break;
case '2':search();break;
case '3':alter();break;
case '4':coalter();break;
case '5': main_menu();
}
}
else return;
}

void add()//添加存單
{
system("cls");
char c;
int i;
printf("======****添加操作****======\n");
printf("請輸入添加存單編號:");
scanf("%s",a[sum].num);
for(i=0;i<sum;i++)
{
if(strcmp(a[sum].num,a[i].num)==0)
{
printf("該存單號已存在,是否重新輸入(y確認,其他鍵返回):");
scanf("%c",&c);
scanf("%c",&c);
if(c=='y'||c=='Y')add();
else menu();
break;
}
}//確保沒有重復單號
printf("請完善存單信息(不同項用空格間隔,請確認信息正確)\n");
printf("儲戶姓名 身份證編號 住址 聯系電話 存款金額 存期 密碼\n");
scanf("%s",a[sum].holder);
c=getchar();
scanf("%s",a[sum].ID);
c=getchar();
scanf("%s",a[sum].address);
c=getchar();
scanf("%s",a[sum].tel);
c=getchar();
scanf("%f",&a[sum].money);
c=getchar();
scanf("%d",&a[sum].time);
c=getchar();
scanf("%s",a[sum].pass);
/*if(a[i].time<3)a[sum].rate=r1;
else if(a[i].time<6)a[sum].rate=r2;
else if(a[i].time<12)a[sum].rate=r3;
else if(a[i].time<24)a[sum].rate=r4;
else a[sum].rate=r5;*/
sum++;//以上利率可考慮是否填入
FILE *p;
printf("錄入存單信息...\n");
p=fopen("001.txt","w");
fclose(p);
p=fopen("001.txt","a");
for(i=0;i<sum;i++)
fprintf(p,"%s %s %s %s %s %.2f %d %s\n",a[i].num,a[i].holder,a[i].ID,a[i].address,a[i].tel,a[i].money,a[i].time,a[i].pass);
fclose(p);
printf("錄入成功...\n");
printf("是否繼續添加存單(y確認,其他鍵返回):");
scanf("%c",&c);
scanf("%c",&c);
if(c=='y'||c=='Y')add();
else menu();
}

void search()//查找
{
system("cls");
char c;
int i;
char nu[10];
printf("======****查詢操作****======\n\n");
printf("請輸入查詢存單號:");
scanf("%s",nu);
for(i=0;i<sum;i++)
if(strcmp(nu,a[i].num)==0)
{
printf("查詢存單信息如下\n");
printf("儲戶姓名:%s\t身份證:%s\n",a[i].holder,a[i].ID);
printf("住址:%s\n電話:%s\t金額:%.2f\n",a[i].address,a[i].tel,a[i].money);
printf("存期:%d\t密碼:%s\n",a[i].time,a[i].pass);
printf("\n任意鍵輸入返回:");
scanf("%c",&c);
scanf("%c",&c);
menu();
}
printf("未查找到該賬單,是否重新查找(y確認,其他鍵返回):");
scanf("%c",&c);
scanf("%c",&c);
if(c=='y'||c=='Y')add();
else menu();
}

void alter()//取款
{
system("cls");
char c;
int i;
float rate;
FILE *p;
char nu[10];
printf("======****取款操作****======\n\n");
printf("請輸入存單編號:");
scanf("%s",nu);
for(i=0;i<sum;i++)
if(strcmp(nu,a[i].num)==0)
{
printf("請輸入密碼:");
scanf("%s",nu);
if(strcmp(nu,a[i].pass)==0)
{
printf("取款成功\n");
if(a[i].time<3)rate=r1;
else if(a[i].time<6)rate=r2;
else if(a[i].time<12)rate=r3;
else if(a[i].time<24)rate=r4;
else rate=r5;//得利率
printf("支付:本金%.2f 利率%.2f%% 利息%.2f\n",a[i].money,rate*100,a[i].money*rate);
printf("更新存單數據...\n");
p=fopen("001.txt","w");
fclose(p);
p=fopen("001.txt","a");
//以下,刪除該存單(最後一單覆蓋本存單)
strcpy(a[i].num,a[sum-1].num);
strcpy(a[i].holder,a[sum-1].holder);
strcpy(a[i].ID,a[sum-1].ID);
strcpy(a[i].address,a[sum-1].address);
strcpy(a[i].tel,a[sum-1].tel);
a[i].money=a[sum-1].money;
a[i].time=a[sum-1].time;
strcpy(a[i].pass,a[sum-1].pass);
sum--;
for(i=0;i<sum;i++)
fprintf(p,"%s %s %s %s %s %.2f %d %s\n",a[i].num,a[i].holder,a[i].ID,a[i].address,a[i].tel,a[i].money,
a[i].time,a[i].pass);
fclose(p);
printf("更新成功...\n");
printf("\n任意鍵輸入返回:");
scanf("%c",&c);
scanf("%c",&c);
menu();
}
printf("密碼不正確,請重新執行該操作...\n");
printf("\n任意鍵輸入重新執行該操作:");
scanf("%c",&c);
scanf("%c",&c);
alter();
}
printf("未查找到該賬單,是否重新執行(y確認,其他鍵返回):");
scanf("%c",&c);
scanf("%c",&c);
if(c=='y'||c=='Y')add();
else menu();
}

void coalter()//修改登陸口令
{
system("cls");
char c;
printf("======****口令修改****======\n\n");
printf("請輸入新的登陸口令:");
scanf("%s",command);
printf("修改成功...");
printf("\n任意鍵輸入返回:");
scanf("%c",&c);
scanf("%c",&c);
menu();
}

㈦ 用c語言如何寫一個銀行存取款管理設計

功能:能夠輸入和查詢客戶存款取款記錄。在客戶文件中,每個客戶是一條記錄,包括編號、客戶姓名、支取密碼、客戶地址、客戶電話、賬戶總金額;在存取款文件中,每次存取款是一條記錄,包括編號、日期、類別、存取數目、經辦人。類別分為取款和存款兩種。本系統能夠輸入客戶存款或取款記錄;根據客戶姓名查詢存款和取款記錄。分步實施:1、初步完成總體設計,搭好框架,確定人機對話界面,確定函數個數;2、建立一個文件,輸入客戶的必要信息,能對文件進行顯示、輸入、修訂、刪除等。3、進一步要求:完成客戶姓名查詢存款和取款記錄,並能得到每次帳戶總金額。要求:1、用C語言實現系統;2、利用結構體數組實現信息的數據結構設計;3、系統的各個功能模塊要求用函數的形式實現;4、界面友好(良好的人機交互),程序加必要的注釋。課程設計實驗報告要求:1、預習報告:題目、課程設計任務、數據結構、程序的總體設計(演算法)、模塊劃分 。2、實驗總結報告:流程圖、主要源程序代碼(需列印)、測試情況及調試中問題與解決方案、小結等要求:標明所用函數的用途和目的,簡單敘述製作思路。

㈧ C語言銀行管理系統

#include <conio.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
char cFile[] = "date.txt";
struct bank
{
char id[10+1];
char psw[6+1];
double money;
};
welcome1()
{
printf("\n\n\t\t歡迎使用虛擬銀行自動取款機服務!\t\t\n\n");
printf("請選擇功能:\n");
printf("\n=================================================\n");
printf(" || 請輸入序號 ||\n");
printf(" || 1.新用戶開戶。 ||\n");
printf(" || 2.老用戶登陸。 ||\n");
printf(" || 3.退出系統。 ||\n");
printf("=================================================\n");
}
welcome2()
{

printf("\n\n\t\t注冊須知\n\n");
printf("**************************************************\n");
printf("* 1.請填寫您的真實資料! *\n");
printf("* 2.開戶首期必須存入100元以上 *\n");
printf("**************************************************\n");
}
welcome3()
{
printf("\n\n\t\t\3 歡迎進入虛擬銀行系統 \3\n\n");
printf("\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\n");
printf("\1\1\t 請選擇功能:1.取款(最多透資2000); \1\1\n");
printf("\1\1\t 2.存款; \1\1\n");
printf("\1\1\t 3.查詢余額; \1\1\n");
printf("\1\1\t 4.修改密碼; \1\1\n");
printf("\1\1\t 5.返回主頁面; \1\1\n");
printf("\1\1\t 任意鍵退出. \1\1\n");
printf("\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\n");
}
int search(char* user, char* pwd, char* real_pwd)/*判斷帳號是否相同,不相同返回1*/
{
FILE* file;
char user_buff[256], pwd_buff[256];
file = fopen(cFile, "r");
if (!file) return 0;
while (!feof(file))
{
if (fscanf(file, "%s%s\n", user_buff, pwd_buff) == EOF) return 0;
if (!strcmp(user_buff, user))
{
if (real_pwd) strcpy(real_pwd, pwd_buff);
return 1;
}
}
fclose(file);
return 0;
}
int add(char* user, char* pwd, double coin_n)
{
FILE* file;
file = fopen(cFile, "a");
if (!file) return 0;
fprintf(file, "%s %s %.2lf\n", user, pwd, coin_n);
fclose(file);
return 0;
}
int wenjian(char* user, char* pwd,double coin)
{
if (search(user, pwd, NULL)) return 0;
else add(user, pwd, coin);
return 1;
}
zhuce()/*注冊*/
{
struct bank *p;
int i=0,k=0,judge1,judge2;
char name[30];
char sex,ch;
char sh[18];
int n;
p=(struct bank*)malloc(sizeof(struct bank));/*給p分配內存*/
welcome2();
printf("請輸入您的名字(純英文):");
gets(name);
printf("請輸入您的性別(男:1 女2):");
fflush(stdin);
scanf("%c",&sex);
fflush(stdin);
printf("請輸入您的身份證號碼:");
gets(sh);
for(n=0;n<strlen(name);n++)/*判斷輸入信息是否正確*/
{
if(name[n]>='0'&&name[n]<='9')
{
printf("您輸入的名字有誤!\n");
printf("\n請選擇:按1返回主頁面. 按任意鍵退出:");
fflush(stdin);
scanf("%c",&ch);
fflush(stdin);
if(ch=='1'){system("cls");main();}
else exit(0);
}
}
if(sex!='1'&&sex!='2')/*判斷輸入信息是否正確*/
{
printf("您輸入的性別不對!\n");
printf("\n請選擇:按1返回主頁面. 按任意鍵退出:");
fflush(stdin);
scanf("%c",&ch);
fflush(stdin);
if(ch=='1'){system("cls");main();}
else exit(0);
}
if(strlen(sh)!=18)/*判斷輸入信息是否正確*/
{
printf("您輸入的身份證號碼不全!\n");
printf("\n請選擇:按1返回主頁面. 按任意鍵退出:");
fflush(stdin);
scanf("%c",&ch);
fflush(stdin);
if(ch=='1'){system("cls");main();}
else exit(0);
}
for(n=0;n<strlen(sh)-1;n++)/*判斷輸入信息是否正確*/
{
if(sh[n]<48||sh[n]>57)
{
printf("您輸入的身份證號碼非法!\n");
printf("\n請選擇:按1返回主頁面. 按任意鍵退出:");
fflush(stdin);
scanf("%c",&ch);
fflush(stdin);
if(ch=='1'){system("cls");main();}
else exit(0);
}
else
{
if(sh[18]!='x'&&sh[18]<48&&sh[18]>57)
{
printf("您輸入的身份證號碼非法!\n");
printf("\n請選擇:按1返回主頁面. 按任意鍵退出:");
fflush(stdin);
scanf("%c",&ch);
fflush(stdin);
if(ch=='1'){system("cls");main();}
else exit(0);
}
}
}
printf("請輸入您的帳號(10位純數字):\n");
fflush(stdin);
scanf("%s",p->id);
fflush(stdin);
while(i <strlen(p->id))
{
if((p->id[i] < 48) || (p->id[i] > 57))
{
judge1=0;
}
i++;
}
while(strlen(p->id)!=10 ||judge1==0)/*判斷帳號的正確性*/
{
printf("您輸入的帳號不正確,必須為10位純數字!");
printf("請重新輸入(10位純數字):");
fflush(stdin);
scanf("%s",p->id);
fflush(stdin);
}
printf("請輸入您的密碼(6位純數字):\n");
fflush(stdin);
scanf("%s",p->psw);
fflush(stdin);
while(k <strlen(p->psw))
{
if((p->psw[k] < 48) || (p->psw[k] > 57))
{
judge2=0;
}
k++;
}
while(strlen(p->psw)!=6 ||judge2==0)/*判斷密碼形式的正確性*/
{
printf("您輸入不正確!密碼必須為6位純數字!\n");
printf("請重新輸入密碼(6位純數字):");
fflush(stdin);
scanf("%s",p->psw);
fflush(stdin);
}
printf("請輸入您的首期存款:");
fflush(stdin);
scanf("%lf",&p->money);
fflush(stdin);
while((p->money)<100)
{
printf("您必須存入100元以上,請重新輸入:");
fflush(stdin);
scanf("%lf",&p->money);
fflush(stdin);
}
if (wenjian(p->id,p->psw,p->money))/*存入文件並輸出基本信息*/
{
system("cls");
printf("注冊成功!");
printf("您的注冊信息如下,請牢記:\n");
printf("名字:");
puts(name);
printf("性別代碼:%c\n",sex);
printf("身份證號碼:");
puts(sh);
printf("帳號:");
puts(p->id);
printf("密碼:");
puts(p->psw);
printf("您帳戶里的余額為:%.2lf\n",p->money);
printf("請選擇:按1返回主頁面. 按任意鍵退出:");
fflush(stdin);
scanf("%c",&ch);
fflush(stdin);
if(ch=='1'){system("cls");main();}
else exit(0);
}
else/*如有相同帳號,注冊失敗*/
{
system("cls");
printf("您輸入的帳號已經存在!注冊失敗!\n");
printf("請選擇:按1返回主頁面. 按任意鍵退出:");
scanf("%c",&ch);
if(ch=='1'){system("cls");main();}
else exit(0);
}
}
gongneng(char Account[10+1],char Password[6+1],double Money)/*登陸成功後的功能界面*/
{
FILE *ps;
struct bank xin[1000];
int k=0,b=0;
char mima[6+1],Chiose,x;
char count[10+1],word[6+1];
double inmoney,outmoney,addmoney;
welcome3();
fflush(stdin);
scanf("%c",&Chiose);
fflush(stdin);
ps=fopen(cFile,"r");
if (!ps)
{
printf("不能打開文件!按任意鍵退出!");
fflush(stdin);
scanf("%c",&x);
fflush(stdin);
exit(0);
}
if(Chiose=='1')
{
printf("輸入您的取款金額:");
fflush(stdin);
scanf("%lf",&outmoney);
fflush(stdin);
while(!feof(ps))
{
fscanf(ps, "%s %s %lf",&xin[k].id,&xin[k].psw,&xin[k].money);
k++;
}
fclose(ps);
ps=fopen(cFile,"wb");
if (!ps)
{
printf("不能打開文件!按任意鍵退出!");
fflush(stdin);
scanf("%c",&x);
fflush(stdin);
exit(0);
}

while(!feof(ps))
{
//printf("%s %s %.2lf\n",xin[b].id,xin[b].psw,xin[b].money);
if ((strcmp(Account, xin[b].id)==0)&&(strcmp(Password, xin[b].psw)==0))
{
xin[b].money=xin[b].money-outmoney;
}
printf("%.2lf\n",xin[b].money);
fprintf(ps, "%s %s %.2lf\n", xin[b].id, xin[b].psw, xin[b].money);
b++;
}
}
}
denglu()/*登陸*/
{
FILE *fp;
char account[10+ 1],password[6 + 1],h;
int m=0;
char real_account[10+ 1]; /* 帳號緩存 */
char real_password[6 + 1]; /* 密碼緩存*/
double real_money_o=0.0; /*存款緩存*/
printf("請輸入您的帳號(10位純數字):");
gets(account);
printf("請輸入您的密碼(6位純數字):");
gets(password);
fp = fopen(cFile, "r");
if (!fp)
{
printf("不能打開文件!按任意鍵退出!");
fflush(stdin);
scanf("%c",&h);
fflush(stdin);
exit(0);
}
while (m<=2) /*判斷是否輸入錯3次了*/
{

while(fscanf(fp, "%s %s %lf", &real_account, &real_password,&real_money_o) != EOF) /*循環判斷帳號密碼*/
{
if ((strcmp(real_account, account)==0)&&(strcmp(real_password, password)==0))
{
system("cls");
printf("登陸成功!");
gongneng(real_account,real_password,real_money_o);
fclose(fp);
return 0;
}
}

rewind(fp); /*重新打開文件,進行新一輪的密碼驗證*/
printf("您輸入的帳號不存在或密碼不正確!\n請重新輸入:\n");
m++;
printf("請輸入您的帳號(10位純數字):");
fflush(stdin);
gets(account);
fflush(stdin);
printf("請輸入您的密碼(6位純數字):");
fflush(stdin);
gets(password);
fflush(stdin);
}
fclose(fp);
printf("您輸入帳號密碼不正確已經3次,您被強制退出系統(按任意鍵退出)!");
fflush(stdin);
scanf("%c",&h);
fflush(stdin);
exit(0);
}
int main()
{
char chiose;
welcome1();
scanf("%c",&chiose);
getchar();
if(chiose <='0' ||chiose>='4')
{
while(chiose <='0' || chiose>='4')
{
printf("您的輸入有誤,請重新輸入:");
scanf("%c",&chiose);
getchar();
}
}
if(chiose=='1')
{
system("cls");
zhuce();/*注冊*/
}
if(chiose=='2')
{
system("cls");
denglu();/*登陸*/
}
if(chiose=='3')
{
printf("謝謝您的使用!");
exit(0);
}
}
打字不易,如滿意,望採納。

㈨ c語言銀行管理系統初學者,求代碼不要太難,簡單寫一下代碼

if (codeInput != code) {
printf("wrong input, try again");
InputCode();
}
else {
login();
}

㈩ 用C語言寫一個銀行AMT模擬系統

沒有分呀 開玩笑呢吧
沒人給你做的 至少要求100分

閱讀全文

與c語言儲蓄綜合平台1相關的資料

熱點內容
炒股可以賺回本錢嗎 瀏覽:367
出生孩子買什麼保險 瀏覽:258
炒股表圖怎麼看 瀏覽:694
股票交易的盲區 瀏覽:486
12款軒逸保險絲盒位置圖片 瀏覽:481
p2p金融理財圖片素材下載 瀏覽:466
金融企業購買理財產品屬於什麼 瀏覽:577
那個證券公司理財收益高 瀏覽:534
投資理財產品怎麼繳個人所得稅呢 瀏覽:12
賣理財產品怎麼單爆 瀏覽:467
銀行個人理財業務管理暫行規定 瀏覽:531
保險基礎管理指的是什麼樣的 瀏覽:146
中國建設銀行理財產品的種類 瀏覽:719
行駛證丟了保險理賠嗎 瀏覽:497
基金會招募會員說明書 瀏覽:666
私募股權基金與風險投資 瀏覽:224
怎麼推銷理財型保險產品 瀏覽:261
基金的風險和方差 瀏覽:343
私募基金定增法律意見 瀏覽:610
銀行五萬理財一年收益多少 瀏覽:792