- #include <stdio.h>
- int main() {
- int room = 1; // 玩家初始房间
- int treasureFound = 0; // 宝藏是否被找到
- printf("欢迎来到文本冒险游戏!\n");
- printf("你正在一个神秘的地宫中...\n");
- while (room != 0 && !treasureFound) {
- switch (room) {
- case 1:
- printf("你在房间1。你看到一扇门通向北方。\n");
- printf("1. 向北走\n");
- printf("2. 留在房间1\n");
- printf("请选择你的行动:");
- break;
- case 2:
- printf("你在房间2。你看到一扇门通向南方和另一扇门通向一间密室。\n");
- printf("1. 向南走\n");
- printf("2. 进入密室\n");
- printf("请选择你的行动:");
- break;
- case 3:
- printf("你在房间3。这里有一扇通向房间1的门。\n");
- printf("1. 返回房间1\n");
- printf("2. 探索其他房间\n");
- printf("请选择你的行动:");
- break;
- case 4:
- printf("你找到了密室!里面有一个大宝箱!\n");
- treasureFound = 1; // 找到宝藏
- printf("恭喜你,你找到了宝藏!游戏结束。\n");
- break;
- default:
- printf("无效的房间号,游戏结束。\n");
- room = 0; // 结束游戏
- break;
- }
- int choice;
- scanf("%d", &choice);
- switch (choice) {
- case 1:
- if (room == 1) room = 2; // 向北走
- else if (room == 2) room = 3; // 向南走
- break;
- case 2:
- if (room == 1) room = 3; // 留在房间1
- else if (room == 2) room = 4; // 进入密室
- break;
- default:
- printf("无效的选择,请重新输入。\n");
- break;
- }
- }
- return 0;
- }
- 在这个游戏中,玩家最初位于房间1。他们可以通过输入1或2来选择行动。根据他们的选择,玩家将被移动到不同的房间或执行不同的动作。游戏会继续进行,直到玩家找到宝藏(房间4)或做出无效选择为止。