电子宠物系统c语言代码
时间: 2023-07-30 17:10:18 浏览: 288
以下是一个简单的电子宠物系统的 C 语言代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX_HEALTH 100
#define MAX_HUNGER 100
#define MAX_MOOD 100
typedef struct {
int health;
int hunger;
int mood;
} Pet;
void initPet(Pet *pet) {
pet->health = MAX_HEALTH;
pet->hunger = MAX_HUNGER;
pet->mood = MAX_MOOD;
}
void printStatus(Pet *pet) {
printf("Health: %d\n", pet->health);
printf("Hunger: %d\n", pet->hunger);
printf("Mood: %d\n", pet->mood);
}
void feedPet(Pet *pet) {
if (pet->hunger > 10) {
pet->hunger -= 10;
} else {
pet->hunger = 0;
}
pet->mood += 5;
}
void playWithPet(Pet *pet) {
if (pet->mood > 10) {
pet->mood -= 10;
} else {
pet->mood = 0;
}
pet->hunger += 5;
}
void updatePet(Pet *pet) {
pet->health -= 5;
pet->hunger += 5;
pet->mood -= 5;
}
int main() {
srand(time(NULL));
Pet myPet;
initPet(&myPet);
int choice;
while (myPet.health > 0 && myPet.hunger < MAX_HUNGER && myPet.mood > 0) {
printf("1. Check status\n");
printf("2. Feed pet\n");
printf("3. Play with pet\n");
printf("Enter choice: ");
scanf("%d", &choice);
switch (choice) {
case 1:
printStatus(&myPet);
break;
case 2:
feedPet(&myPet);
break;
case 3:
playWithPet(&myPet);
break;
default:
printf("Invalid choice\n");
break;
}
updatePet(&myPet);
printf("\n");
}
printf("Game over\n");
return 0;
}
```
这个电子宠物系统有三个状态:健康、饥饿和心情。每个状态都有最大值,分别为 100。游戏开始时,宠物的状态被初始化为最大值。游戏循环中,宠物的状态会随着时间的推移而变化。玩家可以选择查看状态、喂养宠物或与宠物玩耍来改变宠物的状态。游戏会在宠物的健康值降到 0、饥饿值达到最大值或心情降到 0 时结束。