資源簡介
運用C語言實現銀行ATM機的管理員或用戶登錄、注冊、存取款以及轉賬等基本功能,實現動態查詢、萬年歷查詢以及文件存儲等。(初次登陸賬號:admin 密碼:123456)

代碼片段和文件信息
/***************************************************************************************************************
*?文件名稱:?file.c
*
*?內容摘要:
* 文件操作函數
*?歷史紀錄:
創建時間: 2018-08-11
* 修改日期:??2018-08-21 修改人:
* 描述:
****************************************************************************************************************/
#include“file.h“
#include“List.h“
#include
#include
#include
FILE*?file_open(char*?pfilename??int?mode)
{
char*?acMode[2]?=?{“r+“??“rb+“};
char*?acMode2[2]?=?{“w+“??“wb+“};
FILE*?fp?=?fopen(pfilename??acMode[mode]);
if(NULL?==?fp)
{
fp?=?fopen(pfilename??acMode2[mode]);
if(NULL?==?fp)
{
printf(“創建失敗“);
exit(-1);
}
}
return?fp;
}
//文件寫入鏈表
list_t*?file_to_list(FILE?*fpint?size)
{
//1.文件讀取位置初始化,獲取文件的總大小?,并且計算出游幾塊數據
unsigned?inum?=?0?;
list_t*?phead=NULL;
void*?pdata?=?NULL;
unsigned?i?;
fseek(fp??0??SEEK_END);
inum?=?ftell(fp)?/?size;
//2.重新回到開頭讀取數據
rewind(fp);
//3.初始化鏈表頭
if(0?!=?inum)
{
pdata?=?malloc(size);
if(fread(pdata??size??1??fp)?!=?1)
{
printf(“fread一塊數據失敗\n“);
}
phead?=?list_init(pdata);
}
for(i?=?1?;?i? {
pdata?=?malloc(size);
if(fread(pdata??size??1??fp)?!=?1)
{
printf(“fread一塊數據失敗\n“);
}
list_add(phead??pdata);
}
return?phead;
}
//鏈表寫入文件
int?list_to_file(FILE?*fp??list_t*?phead??int?size)
{
int?inum=0;
//1.文件光標初始化
rewind(fp);
//2.寫入
while(NULL?!=?phead)
{
if(fwrite(phead->pdata??size??1?fp)?==?0)
{
printf(“寫入失敗\n“);
}
inum++;
phead=?phead->pnext;
}
//3.數據刷新?寫入磁盤
fflush(fp);
//4.返回
return?inum;
}
/////////////********************************************************************************
int?file_update(FILE?*fp?void*?date?int?size?int?index)
{
fseek(fp??size*index??SEEK_SET);//移動到文件某個數據塊
if?(fwrite(date?size?1?fp)?!=?0)//寫入
{
fflush(fp);
return?1;
}
return?0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-09-03?10:30??ATM\
?????文件????????5265??2018-08-22?00:41??ATM\ATM.dsp
?????文件?????????512??2018-08-10?16:08??ATM\ATM.dsw
?????文件??????197632??2018-09-03?10:30??ATM\ATM.ncb
?????文件???????51712??2018-09-03?10:30??ATM\ATM.opt
?????文件????????1660??2018-09-03?10:30??ATM\ATM.plg
?????文件?????????328??2018-08-14?17:57??ATM\ATM.sln
?????文件????????8704??2018-08-14?17:57??ATM\ATM.suo
?????文件?????????286??2018-08-21?23:35??ATM\Begin.h
?????目錄???????????0??2018-09-03?10:22??ATM\Debug\
?????文件?????3474432??2018-09-03?10:30??ATM\Debug\ATM.bsc
?????文件??????258117??2018-09-03?10:30??ATM\Debug\ATM.exe
?????文件??????362284??2018-09-03?10:30??ATM\Debug\ATM.ilk
?????文件?????3800368??2018-09-03?10:22??ATM\Debug\ATM.pch
?????文件??????852992??2018-09-03?10:30??ATM\Debug\ATM.pdb
?????文件?????????504??2018-08-22?00:14??ATM\Debug\Tran_Data.txt
?????文件???????73785??2018-08-21?23:31??ATM\Debug\UI.obj
?????文件???????????0??2018-08-21?23:31??ATM\Debug\UI.sbr
?????文件????????2464??2018-08-22?00:14??ATM\Debug\User_Data.txt
?????文件???????13843??2018-08-21?23:31??ATM\Debug\file.obj
?????文件???????????0??2018-08-21?23:31??ATM\Debug\file.sbr
?????文件???????13845??2018-08-21?23:31??ATM\Debug\list.obj
?????文件???????????0??2018-08-21?23:31??ATM\Debug\list.sbr
?????文件????????9855??2018-08-22?00:31??ATM\Debug\main.obj
?????文件???????????0??2018-08-22?00:31??ATM\Debug\main.sbr
?????文件???????29172??2018-09-03?10:30??ATM\Debug\money.obj
?????文件???????????0??2018-09-03?10:30??ATM\Debug\money.sbr
?????文件???????23910??2018-08-21?23:31??ATM\Debug\public.obj
?????文件???????????0??2018-08-21?23:31??ATM\Debug\public.sbr
?????文件????????1236??2018-08-17?01:47??ATM\Debug\trade.obj
?????文件???????????0??2018-08-17?01:47??ATM\Debug\trade.sbr
............此處省略19個文件信息
評論
共有 條評論