C语言综合实验(三)之计费管理系统的文件存储管理

本实验涉及C语言的文件存储管理,包括搭建三层架构实现卡片的添加、读取和查询。在数据访问层,实现了saveCard()和readCard()函数用于文件的保存和读取。表示层和业务逻辑层分别负责交互和调用数据访问层函数。此外,还编写了praseCard()和stringToTime()函数解析和转换卡信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验内容

(1)搭建三层架构

① 在数据访问层实现添加卡,在card_file.c文件中,定义saveCard()函数

② 在业务逻辑层实现添加卡,修改addCard()函数,在此函数中调用数据访问层里的saveCard函数,保存卡信息。

③ 在表示层实现添加卡

④ 编译并运行程序

(2)在数据访问层,实现用文件保存添加的卡

① 实现saveCard()函数,将卡信息保存到文件。

② 调用saveCard函数,将添加的卡信息保存到工程目录下的card.txt文件

(3)读取文件中的卡信息

① 在card_file.c文件中,定义readCard()函数

② 编写readCard()函数,实现从文件中读取卡信息的功能

③编译并运行程序

(4)解析读取的卡信息

①在card_file.c文件中,定义praseCard()函数

②编写praseCard()函数,实现解析卡信息字符串的功能

③在tool.c文件中,定义stringToTime()函数

④编写stringToTime()函数,将字符串转换为time_t类型的数据

⑤在praseCard()函数中,调用stringToTime()函数

⑥在readCard()函数中,调用praseCard()函数

⑦编译并运行程序

(5)根据卡号查询卡信息

沿用第一次的main.cpp
沿用第二次的menu.h
沿用第二次的card.h

menu.cpp
菜单源文件

#define _CRT_SECURE_NO_WARNINGS//消除scanf警告
#include"stdio.h"
#include"stdlib.h"
#include "string.h"
#include"menu.h"
#include"card.h"
#include"card_file.h"
#include"time.h"
Card *card = initial();
void outputmenu() {
	do {
		char i;
		printf("以下为本账户管理系统的菜单界面\n");
		printf("1.添加卡\n");
		printf("2.查询卡\n");
		printf("3.上机\n");
		printf("4.下机\n");
		printf("5.充值\n");
		printf("6.退费\n");
		printf("7.查询统计\n");
		printf("8.注销卡\n");
		printf("0.退出\n");
		printf("请输入0-8数字来进行选择\n");
		scanf("%c", &i);
		switch (i) {
		case '0': {
			exit(0);
			break;
		}
		case '1': {
			add();
			break;
		}
		case '2': {
			query();
			break;
		}
		case '3': {
			system("cls");
			printf("以下为上机的菜单界面\n");
			system("pause");
			/*
			上机
			*/
			break;
		}
		case '4': {
			system("cls");
			printf("以下为下机的菜单界面\n");
			system("pause");
			/*
			下机
			*/
		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值