资源简介
LEMS.zip
代码片段和文件信息
/*
*Copyright (c) 2018 cubestdio
*All rights reserved
*
*filename:LSMS.cpp
*Description:
*
*version:1.0
*Author:xyc
*Created on 20180908
*/
/*---------------引入头文件---------------*/
#include
#include
#include
#include
#include
/*---------------声明设备结构体类型---------------*/
typedef struct device
{ /*数据域*/
/*设备编号*/
char ID[20];
/*设备类型*/
char type[20];
/*设备型号*/
char version[20];
/*购买日期*/
char date[10];
/*购入价格*/
double price;
/*管理员*/
char admin[20];
/*设备状态*/
char state[20];
/*指针域*/
struct device *next;
} Device;
/*---------------符号常量---------------*/
#define N 10
/*---------------函数原型---------------*/
void welcome();
Device *read(Device *head);
Device *create(FILE *fpDevice *m);
void menu(Device *head);
Device *Add(Device *head);
Device *getRearPointer(Device *head);
Device *AddValue(Device *headDevice m);
void Display(Device *head);
int Query(Device *headint a[]);
void print_head();
void print_row(Device *p);
void print_foot();
int QueryByID(Device *headint a[N]char keyword[20]);
void CountPos(int a[]int index[]int n);
Device *Delete(Device *head);
Device *DeleteByPos(Device *headint Pos);
void Modify(Device *head);
void ModifyByPos(Device *headint Pos);
void Stat(Device *head);
void getTotalValue(Device *head);
void getTotalNumber(Device *head);
double getValueByPos(Device *headint Pos);
void getFieldValue(Device *head);
void getFieldNumber(Device *head);
void Save(Device *head);
void destroy(Device *head);
void Exit(Device *head);
/*---------------主函数---------------*/
int main()
{ /*定义一个表头指针变量,并将它初始化为NULL*/
Device *head=NULL;
/*调用欢迎模块*/
welcome();
/*调用读取模块*/
head=read(head);
/*调用菜单模块*/
menu(head);
return 0;
}
/*---------------欢迎模块---------------*/
/*
*函数名:welcome
*函数功能:输出欢迎字符串
*函数参数:无
*函数返回值:无
*/
void welcome()
{
printf(“##############################################################################\n“);
printf(“## Welcome to the laboratory equipment management system!!! ##\n“);
printf(“##############################################################################\n“);
printf(“请按任意键继续...“);
/*getch函数接受一个任意键的输入,不用按回车就返回*/
getch();
/*下面这条语句用于清除“请按任意键继续...”这几个字*/
printf(“\r \r“);
}
/*---------------读取模块---------------*/
/*
*函数名:read
*函数功能:打开文本文件,若文件为空,则询问是否添加数据,若文件非空,则进行读取操作
*函数参数:接收表头指针变量里存的地址
*函数返回值:返回表头指针变量里存的地址
*/
Device *read(Device *head)
{
/*定义一个FILE类型的指针变量*/
FILE *fp;
/*定义一个静态结构体变量,因为后面需要用到它的地址*/
static Device m;
/*定义一个临时变量用于询问是否添加数据*/
char judge;
/*文件打开及检验*/
if( (fp = fopen(“source.txt““r“) ) == NULL)
{
printf(“cannot open sourefile!“);
exit(0);
}
/*先读取一行数据,返回值k是指已输入的数据个数,这样做是为了解决只有一行记录时出现的BUG*/
int k=fscanf(fp“%s%s%s%s%lf%s%s\n“m.IDm.typem.versionm.date&(m.price)m.adminm.state);
/*判断文件是否为空*/
if(k==EOF)
{ /*如果为空,则询问是否
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 31419 2018-09-08 21:06 LEMS.cpp
文件 357 2018-03-03 21:18 source.txt
相关资源
- 协议分析.doc
- 采用遗传粒子群GAPSO和混沌粒子群CP
- 16PSK系统仿真及误码率性能分析.pdf
- 社区管理系统需求分析文档
- 第2篇-第4版M文件.zip
- 2009试卷人工智能.pdf
- 原理图源代码Proteus仿真.zip
- zw_xielingyue1987-2431008-.zip
- 双二阶RC有源带通滤波器分析_附Mult
- 往年卷子.zip
- 43t9sb.rar
- 1fporp.rar
- 2015年逻辑控制赛项思路分析.pdf
- Bilibili竞对分析20200508.pdf
- 多元统计分析程序.rar
- tuosanqian1575_10300922.zip
- MIKEZERO2014_.rar
- zw_hello3222-8745847-语义分析及中间代码
- kay-仓库管理系统.zip
- 梯控数据分析.rar
- exapowerflow5.3c特别版(附破解教程破解
- Y---腾讯大牛亲授Web前后端漏洞分析与
- ofdmproj_win.rar
- 从零进阶!数据分析的统计基础.txt
- 电子负载.rar
- 谷歌.zip
- 康拓系统分析(1).rar
- 孵化环境温湿度监控系统设计.rar
- 密码科技全加密破解.rar
- 实验三TCP和UDP协议分析.docx
评论
共有 条评论