c语言实验设备管理系统设计作业,C语言程序设计之实验室设备管理系统源代码...

这篇博客介绍了如何使用C语言创建一个设备管理系统的链表数据结构,包括添加和修改设备记录的功能。通过输入设备ID、名称、种类、报废日期、是否报废状态、购买时间和价格等信息,用户可以添加设备记录。此外,还提供了修改已有记录的选项。
摘要由CSDN通过智能技术生成

#include "stdio.h"

#include "stdlib.h"

#include "string.h"

struct shebei

{

int ID;

char name[100];

char kind[50];

int over;

char yesno[50];

int time;

int price;

};

typedef struct node

{

struct shebei data;

struct node *next; //建立一个链表。

}Node;

void writeto(Node *equip)

{

Node *p;

p=equip->next ;

if(p==NULL)

{

printf("无设备记录!!!");

}

else

{

printf("存放成功!!!!\n文件存放在D:\\设备管理系统\n");

}

}

void Add(Node *equip) //添加记录

{

Node *p,*r,*s;

int id; //先用于输入ID,也用于判断是否跳出循环

r=equip;

s=equip->next; //使s为第一个有用的结点

while(r->next!=NULL) //这个循环的作用是使r为最后一个有用的结点

r=r->next; //将指针置于最末尾

while(1)

{

printf(">>>>>>>>>>提示:输入0则返回主菜单!\n");

printf("\n请你输入设备ID号:");

scanf("%d",&id);

if(id==0) {break;}

p=(Node *)malloc(sizeof(Node)); //申请空间

p->data.ID=id;

printf("\n请输入设备名称:");

scanf("%s",p->http://doc.xuehai.net);

printf("\n请输入设备种类:");

scanf("%s",p->data.kind);

printf("\n请输入报废日期:");

scanf("%d",&p->data.over);

printf("\n请输入设备是否报废:");

scanf("%s",&p->data.yesno);

printf("\n请输入设备购买时间:");

scanf("%d",&p->data.time);

printf("\n请输入设备价格:");

scanf("%d",&p->data.price);

printf(">>>>>>>>>>提示:已经完成一条记录的添加。\n");

Node *p0, *p1;

if(equip==NULL)

{

equip=p;

p->next=NULL;

}

if( p->data.IDdata.ID)

{

p->next=equip;

equip=p;

}

p1=equip;

while((p->data.ID > p1->data.ID)&&(p1->next != NULL))

{

p0 = p1;

p1 = p1->next;

}

if(p->data.ID data.ID)

{

p->next=p1;

p0->next=p;

}

else

{

p1->next = p;

p->next = NULL;

}

}

}

void Modify(Node *equip)//修改

{

Node *p;

int find;

if(!equip->next)

{

printf("\n>>>>>>>>>>提示:没有资料可以修改!\n");

return;

}

printf("请输入要修改的设备ID号:");

scanf("%d",&find);

p=equip->next;

while(p!=NULL)

{

if(p->data.ID==find) //如果找到的话返回的是符合要求

break;

p=p->next;

}

if(p) //若找到

{

int x;

while(1)

{

printf("完成修改请输入0否则输入任意数再进行修改:");

scanf("%d",&x);

if(x==0)

{break;}

printf("请输入新设备号(原来是 %d ):",p->data.ID);

scanf("%d",&p->data.ID);

printf("请输入新设备名称(原来是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值