資訊管理系統 Day02

2021-10-06 02:23:23 字數 3495 閱讀 4288

前情提要

昨天(2020.0512)從乙個簡單的乘法口訣表的生成,一直擴充套件到了介面的轉換,用switch case 代替 if else

然後,定睛一看,這不就奔著乙個資訊管理系統在寫麼。

所以。。。那就寫個資訊管理系統吧。

先貼上昨天的**資訊系統的萌芽哈哈哈(見鏈結末尾)

分析

資訊管理系統,需要對資訊進行儲存、查詢、插入、刪除這幾個基本功能。

首先需要的就是c語言的檔案功能。

下面學習一些c語言檔案的基本操作。

一、檔案寫入

首先函式原型為_crtimp file * __cdecl fopen(const char *, const char *);

先呼叫file 定義乙個指標fp

然後再對fp進行操作

fopen(「檔案位址及檔名」,「操作名」)

檔案位址及檔名:如沒有檔案,則只填寫位址,如下

操作名:

「r」:只能從檔案中讀資料,該檔案必須先存在,否則開啟失敗

「w」:只能向檔案寫資料,若指定的檔案不存在則建立它,如果存在則先刪除它再重建乙個新檔案

「a」:向檔案增加新資料(不刪除原有資料),若檔案不存在則開啟失敗,開啟時位置指標移到檔案末尾

「r+」:可讀/寫資料,該檔案必須先存在,否則開啟失敗

「w+」:可讀/寫資料,用該模式開啟新建乙個檔案,先向該檔案寫資料,然後可讀取該檔案中的資料

「a+」:可讀/寫資料,原來的檔案不被刪去,位置指標移到檔案末尾

現在進行乙個檔案的建立

file* fp;

fp =

fopen

("c:\\users\\楊文峰\\desktop\\text\\text.txt"

,"w"

);

建議大家在寫**的時候,如果不知道某條語句是否成功執行,就在後面插個眼printf("執行成功");這樣很容易就知道了。

檔案建立好了,寫入些東西吧

while

((ch =

getchar()

)!='0')

printf

("檔案寫入成功"

);

通過fputc()語句可以將字元寫入指標fp所指向的檔案中

效果就不貼圖了,來回截圖好麻煩,這一步驟很簡單的。自己試試。

(這種類似介紹性話語就是防止我哪天突然完全忘記咋編**而準備的)

檔案寫入了,接下來讀出試試

字元讀取函式fgetc()可從檔案資料流中一次讀取乙個字元,然後讀取游標移動到下乙個字元,並逐步將檔案的內容讀出。

如果字元讀取成功,則返回所讀取的字元,否則返回eof(end of file)。eof是表示資料結尾的常量,真值為-1。另外,要判斷檔案是否讀取完畢,可利用feof()進行檢查。未完返回0,已完返回非零值。

feof()函式原型為:_crtimp int __cdecl feof(file *);

————————————————————

內容摘自

原作者致守

fp =

fopen

("c:\\users\\楊文峰\\desktop\\text\\text.txt"

,"r");

if(fp !=

null

)else

printf

("檔案不存在!!!"

);

為了使**結構清晰明了

分別建立fileput()和fileget()

void

fileput

(file *fp)

//字元寫入

printf

("檔案寫入成功");

}void

fileget

(file *fp)

//字元讀取

else

printf

("檔案不存在!!!");

}

執行後發現無法讀取檔案

懷疑是寫入的時候沒有關閉所以沒有儲存

插入關閉函式fclose(fp);

讀取成功

跳過scanf解決辦法:在scanf前加getchar();

#define _crt_secure_no_deprecate

#define _crt_secure_no_warnings;

//檔案相關練習

#include

"stdio.h"

#include

"stdlib.h"

#include

"conio.h"

void

usercontral()

;void

filecreate()

;void

fileput()

;void

fileget()

;void

filecreate()

//檔案建立

else

exit(0

);}void

fileput

(file *fp)

//字元寫入

printf

("檔案寫入成功\n");

fclose

(fp)

;printf

("是否返回選單?是1");

int j;

scanf_s

("%d"

,&j);if

(j ==1)

else

exit(0

);}void

fileget

(file *fp)

//字元讀取

else

printf

("檔案不存在!!!\n");

fclose

(fp)

;printf

("是否返回選單?是1");

int j;

scanf_s

("%d"

,&j);if

(j ==1)

else

exit(0

);}void

usercontral()

}int

main()

以上就實現了基本的檔案讀寫操作

下面來建立資訊庫

待續。。。。。

學習參考

作者致守,多謝大佬分享。小白感激不盡!!

資訊管理系統

輸入5個員工的資訊 輸入 每個員工含有成員名為 工號 姓名 基本工資 補貼 獎金 水電費 房租 實發工資 工資排名 編寫函式完成下列要求 1 輸入乙個員工的工號,查詢該員工的資訊並輸出,若不存在顯示沒找到 查詢 2 輸入乙個新員工的資訊,按工號順序將該員工的資訊插入後輸出 顯示 3 輸入乙個已存在員...

Day15學生資訊管理系統

main.c include fun.h enum keys key intmain void return0 fun.h pragma once define crt secure no warnings include include include define stumax 1024 成績結...

day02 資料儲存

librarys c和c 的 庫 linux kernel 操作硬體裝置 開發步驟 1.建立android專案 2.設計布局 3.新增事件監聽 4.發布執行 資料儲存 openfileinput string filename 開啟 data data 包名 files目錄下檔案對應的輸入流 sd卡...