用c语言编写一个养殖系统;有记录养殖动物的种类和数量,储存记录的信息等功能
时间: 2023-06-14 09:04:47 浏览: 54
以下是一个简单的养殖系统的C语言代码示例,实现了记录养殖动物的种类和数量,储存记录的信息等功能。
```c
#include <stdio.h>
#include <string.h>
#define MAX_ANIMALS 100
struct Animal {
char name[50];
int quantity;
};
struct Farm {
char name[50];
struct Animal animals[MAX_ANIMALS];
int num_animals;
};
void add_animal(struct Farm* farm, char* animal_name, int quantity) {
int i;
for (i = 0; i < farm->num_animals; i++) {
if (strcmp(farm->animals[i].name, animal_name) == 0) {
farm->animals[i].quantity += quantity;
return;
}
}
if (farm->num_animals < MAX_ANIMALS) {
struct Animal new_animal = { .quantity = quantity };
strcpy(new_animal.name, animal_name);
farm->animals[farm->num_animals++] = new_animal;
}
}
void print_farm(struct Farm* farm) {
printf("Farm name: %s\n", farm->name);
printf("Animals:\n");
int i;
for (i = 0; i < farm->num_animals; i++) {
printf("%s: %d\n", farm->animals[i].name, farm->animals[i].quantity);
}
}
int main() {
struct Farm my_farm = { .name = "My Farm", .num_animals = 0 };
add_animal(&my_farm, "Cow", 5);
add_animal(&my_farm, "Pig", 3);
add_animal(&my_farm, "Chicken", 10);
print_farm(&my_farm);
return 0;
}
```
在此示例中,我们定义了两个结构体:`Animal`和`Farm`。 `Animal`结构体表示一个动物,包括名称和数量。 `Farm`结构体表示一个农场,包括名称和动物数组。 我们可以通过调用`add_animal`函数向农场添加动物,并通过调用`print_farm`函数打印农场的信息。