用c语言写一个仪器管理系统
时间: 2023-12-25 15:04:34 浏览: 137
抱歉,我是一个语言模型,无法编写实际的程序代码。以下是一个简单的仪器管理系统的伪代码,希望能够帮助您理解系统的基本架构和功能。
```
#include <stdio.h>
#include <string.h>
// 定义仪器结构体
typedef struct {
char name[20];
char model[20];
int quantity;
} Instrument;
// 定义仪器管理系统
typedef struct {
Instrument instruments[100]; // 最多管理100种仪器
int count; // 记录当前已管理的仪器数量
} InstrumentManagementSystem;
// 初始化仪器管理系统
void initIMS(InstrumentManagementSystem* ims) {
memset(ims->instruments, 0, sizeof(ims->instruments));
ims->count = 0;
}
// 添加新仪器
void addInstrument(InstrumentManagementSystem* ims, Instrument instrument) {
if (ims->count >= 100) {
printf("无法添加新仪器,已达到最大数量\n");
return;
}
ims->instruments[ims->count++] = instrument;
printf("成功添加仪器:%s %s 数量:%d\n", instrument.name, instrument.model, instrument.quantity);
}
// 根据名称查询仪器
void searchInstrumentByName(InstrumentManagementSystem* ims, char* name) {
int found = 0;
for (int i = 0; i < ims->count; i++) {
if (strcmp(ims->instruments[i].name, name) == 0) {
printf("找到仪器:%s %s 数量:%d\n", ims->instruments[i].name, ims->instruments[i].model, ims->instruments[i].quantity);
found = 1;
break;
}
}
if (!found) {
printf("未找到仪器:%s\n", name);
}
}
// 根据型号查询仪器
void searchInstrumentByModel(InstrumentManagementSystem* ims, char* model) {
int found = 0;
for (int i = 0; i < ims->count; i++) {
if (strcmp(ims->instruments[i].model, model) == 0) {
printf("找到仪器:%s %s 数量:%d\n", ims->instruments[i].name, ims->instruments[i].model, ims->instruments[i].quantity);
found = 1;
break;
}
}
if (!found) {
printf("未找到仪器型号:%s\n", model);
}
}
// 修改仪器数量
void modifyInstrumentQuantity(InstrumentManagementSystem* ims, char* name, int quantity) {
int found = 0;
for (int i = 0; i < ims->count; i++) {
if (strcmp(ims->instruments[i].name, name) == 0) {
ims->instruments[i].quantity = quantity;
printf("成功修改仪器数量:%s %s 数量:%d\n", ims->instruments[i].name, ims->instruments[i].model, ims->instruments[i].quantity);
found = 1;
break;
}
}
if (!found) {
printf("未找到仪器:%s\n", name);
}
}
int main() {
InstrumentManagementSystem ims;
initIMS(&ims);
// 添加初始仪器
Instrument instrument1 = {"示波器", "DSO-100", 10};
addInstrument(&ims, instrument1);
// 查询仪器
searchInstrumentByName(&ims, "示波器");
searchInstrumentByModel(&ims, "DSO-100");
// 修改仪器数量
modifyInstrumentQuantity(&ims, "示波器", 5);
return 0;
}
```
阅读全文