當前位置:首頁 » 編程語言 » 銀行賬戶管理系統c語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

銀行賬戶管理系統c語言

發布時間: 2022-01-30 21:02:48

Ⅰ 求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);
}
}

Ⅱ 編寫 c語言 銀行賬戶信息管理系統

請將我採納為最佳答案後聯系我,謝謝!

Ⅲ c語言編寫銀行卡管理系統〔急〕謝謝

這個問題需要200分才有人回答

Ⅳ 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語言銀行管理系統

#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語言編一個程序,建立一個簡單的銀行帳戶管理系統

#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; } 沒有寫完,樓主可以參考一下!

Ⅶ 用C語言編寫銀行帳戶賬戶管理系統

使用 C 語言編寫一個銀行帳戶管理系統?你的這個編程要求實在是太高了,肯定是不會有人滿足你的要求的。
因為這個要求已經不是簡單地答疑 C 語言的語法錯誤之類的問題了,而是需要從頭設計整個該帳戶管理系統的各種數據存儲結構、以及各種演算法(在編寫此軟體的過程中,肯定需要涉及:到底採用哪一種排序演算法效率最高、以及採取哪一種查找演算法對人員進行查詢效率最高),並且要想徹底從編寫一個源程序,到編譯、鏈接、直到該應用軟體能夠運行出用戶所要求的最終正確結果,那是需要花費很多的時間和精力去調試的,而不是只要寫出程序代碼,即使程序的編程思路是正確的,也不一定能夠保證程序的運行結果是正確的。

Ⅷ 銀行賬戶管理系統 c語言

如果你用VC編譯,有幾處警告,你可以把下面有雙斜杠那一行去掉就行

通過VC++6.0編譯
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

#define BUFFERSIZE 1024
#define MAXACCOUNT 1000
typedef struct BankAccount
{
int account;
int key;
char name[32];
float balance;
}BANKACCOUNT;

BANKACCOUNT accountCollection[MAXACCOUNT];
int curAccount = 0;

void InsertAccount(FILE *fp)
{
BANKACCOUNT newaccount;
printf("please input the account information\n");
printf(">>account num:");
scanf("%d",&(newaccount.account));
printf(">>key:");
scanf("%d",&(newaccount.key));
printf(">>name:");
scanf("%s",newaccount.name);
printf(">>balance:");
scanf("%f",&(newaccount.balance));
fseek(fp,0L,SEEK_END);
fprintf(fp,"%d %d %s %.2f\n",newaccount.account,newaccount.key,newaccount.name,newaccount.balance);
}
void GetAccount(FILE *fp)
{
int accountnum;
int key;
char name[32];
float balance;
int i =0;
//char buffer[BUFFERSIZE];
//int len;
curAccount = 0;
fseek(fp,0,SEEK_SET);
while(!feof(fp)) /* 因為feof()最後會讀2遍,所以最後curAccount多加了1 */
{
fscanf(fp,"%d %d %s %f",&accountnum,&key,name,&balance);
accountCollection[curAccount].account = accountnum;
accountCollection[curAccount].key = key;
strcpy(accountCollection[curAccount].name ,name);
accountCollection[curAccount].balance = balance;
curAccount++;
}
}
void ListAccount(FILE *fp)
{
int i =0;
printf("There is %d accounts at all:\n",curAccount-1);/* curAccount減去多加的1 */
for(i = 0;i< curAccount-1;i++)
{
printf("ACCOUNT[%d]:\n",i+1);
printf(">>accountnum:%d\n",accountCollection[i].account);
printf(">>accountnum:%s\n",accountCollection[i].name);
printf(">>accountnum:%.2f\n",accountCollection[i].balance);
}
}
int SearchAccount(FILE *fp,int accountnum)
{
int i =0;
for(i = 0;i< curAccount-1;i++)
{
if(accountCollection[i].account == accountnum)
{
printf("ACCOUNT[%d]:\n",i+1);
printf(">>accountnum:%d\n",accountCollection[i].account);
printf(">>accountnum:%s\n",accountCollection[i].name);
printf(">>accountnum:%.2f\n",accountCollection[i].balance);
return 1;
}
}
return 0;
}
void DelAccount(FILE *fp,int accountnum)
{
int i;
if(SearchAccount(fp,accountnum)==0)
printf("Can't find the account\n");
else
{
for(i = 0;i<curAccount-1;i++)
{
if(accountCollection[i].account != accountnum)
fprintf(fp,"%d %d %s %.2f\n",accountCollection[i].account,accountCollection[i].key,accountCollection[i].name,accountCollection[i].balance);
}
printf("delete successfully!\n");
}
}
int main()
{
FILE *fp;
int accountnum;
int i;
do{
// clrscr();
puts("********************************************");
puts("* You can choose : *");
puts("* 1 : Insert a new Account *");
puts("* 2 : List all Accounts *");
puts("* 3 : Find a Account *");
puts("* 4 : Delete a Account *");
puts("* 5 : quit *");
puts("********************************************");
puts("Please input your choice:");
scanf("%d",&i);
//clrscr();
switch(i)
{
case 1:
if(!(fp = fopen("account.txt","a+")))
{
printf("can't open the file account.txt\n");
exit(0);
}
InsertAccount( fp);

printf("press any key to continue.....\n");
//getch();
fclose(fp);
break;
case 2:
if(!(fp = fopen("account.txt","r")))
{
printf("can't open the file account.txt\n");
exit(0);
}
GetAccount(fp);
ListAccount(fp);

fclose(fp);
printf("press any key to continue.....\n");
//getch();
break;
case 3:
printf("please input the account num:\n");
scanf("%d",&accountnum);
if(!(fp = fopen("account.txt","r")))
{
printf("can't open the file account.txt\n");
exit(0);
}
GetAccount(fp);
if(!SearchAccount(fp,accountnum))
printf("There is not the account:%d\n",accountnum);

fclose(fp);
printf("press any key to continue.....\n");
//getch();
break;
case 4:
printf("please input the account num:\n");
scanf("%d",&accountnum);
if(!(fp = fopen("account.txt","r")))
{
printf("can't open the file account.txt\n");
exit(0);
}
GetAccount(fp);
fclose(fp);
if(!(fp = fopen("account.txt","w+")))
{
printf("can't open the file account.txt\n");
exit(0);
}
DelAccount(fp,accountnum);
fclose(fp);
printf("press any key to continue.....\n");
// getch();
break;
default:
break;
}
}while(i != 5);
// getch();
return 0;
}

Ⅸ 求簡單的C語言編程,銀行賬戶管理系統

簡單的管理系統代碼(按照你的要求:輸入輸出加查找)

優化如下:

#include<stdio.h>
#include<string.h>
structbank{
charname[20];
charnum[20];
doublemoney;
};
intinput(structbankgusts[],intn);
voidoutput(structbankgusts[],intn);
voidfind(structbankgusts[],intn);
intmain()
{
structbankgusts[100];
intn,choose;
printf("請輸入要錄入數據條數:");
scanf("%d",&n);
input(gusts,n);
printf("按照提示選擇相應的操作! ");
while(1)
{
printf("1:查找2輸出0結束 ");
scanf("%d",&choose);
if(choose==0)
break;
switch(choose){
case1:find(gusts,n);break;
case2:output(gusts,n);break;
default:printf("無此操作! ");break;
}
}
return0;
}
intinput(structbankgusts[],intn)
{
inti;
if(n>100)
{
printf("數據過多! ");
return0;
}
printf("按以下格式輸入%d條數據! ",n);//加了一條提示
printf("姓名賬號金額 ");
for(i=0;i<n;i++)
{
scanf("%s%s%lf",gusts[i].name,gusts[i].num,&gusts[i].money);//賬號不要帶空格
}
printf("成功錄入%d條賬戶數據! ",n);
return0;
}
voidoutput(structbankgusts[],intn)
{
inti;
printf("姓名賬號金額 ");
for(i=0;i<n;i++)
{
printf("%d:%s%s%0.3lf ",i+1,gusts[i].name,gusts[i].num,gusts[i].money);
}
printf("成功輸出所有賬戶數據! ");
}
voidfind(structbankgusts[],intn)
{
inti,choose;
intcount;
charname[20],num[20];
printf("請輸入查找類型對應的數字編號[1-3]:1姓名查找2賬戶查找3編號查找4結束查找: ");
while(1){
scanf("%d",&choose);
if(choose==4)
break;
elseif(choose<1||choose>3)
{
printf("無此種查找!請重新選擇! ");
continue;
}
count=0;
switch(choose){
case1:
printf("請輸入查找的客戶姓名:");
scanf("%s",name);
printf("查詢結果如下: 姓名賬戶編號 ");
for(i=0;i<n;i++)
{
if(strcmp(gusts[i].name,name)==0)
{
printf("%d:%s%s%0.3lf ",i+1,gusts[i].name,gusts[i].num,gusts[i].money);
count++;
}
}
printf("共查詢到%d條結果! ",count);//加入結果統計
break;
case2:
printf("請輸入查找的客戶賬戶:");
scanf("%s",num);
printf("查詢結果如下: 姓名賬戶編號 ");
for(i=0;i<n;i++)
{
if(strcmp(gusts[i].num,num)==0)
{
count++;
printf("%d:%s%s%0.3lf ",i+1,gusts[i].name,gusts[i].num,gusts[i].money);
}
}
printf("共查詢到%d條結果! ",count);//加入結果統計
break;
case3:
printf("請輸入查找的客戶編號:");
scanf("%d",&i);
printf("查詢結果如下: 姓名賬戶編號 ");
printf("%d:%s%s%0.3lf ",i+1,gusts[i].name,gusts[i].num,gusts[i].money);
break;
}
}
}

運行截圖:

Ⅹ C語言設置銀行帳戶管理系統

#include #include 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; } 沒有寫完,樓主可以參考一下!