C 语言猜数游戏 多文件分模块完整代码

张开发
2026/4/19 17:21:05 15 分钟阅读

分享文章

C 语言猜数游戏 多文件分模块完整代码
一、文件结构game.h头文件函数声明、头文件包含、宏定义、防止重复包含game.c源文件游戏函数具体实现main.c程序入口菜单 循环逻辑二、game.h 头文件代码#pragma once // 包含需要的系统头文件 #include stdio.h #include stdlib.h #include time.h // 游戏数字范围宏定义方便后期修改 #define MIN 1 #define MAX 100 // 游戏函数声明 void game(); // 猜数游戏主体逻辑 void menu(); // 游戏菜单界面三、game.c 源文件代码#define _CRT_SECURE_NO_WARNINGS 1 #include game.h // 打印游戏菜单 void menu() { printf(\n); printf( 1. 开始游戏 \n); printf( 0. 退出游戏 \n); printf(\n); } // 猜数游戏核心逻辑 void game() { int guess 0; // 1. 生成1~100随机数 int random_num rand() % (MAX - MIN 1) MIN; printf(游戏开始请猜一个1-100之间的数字\n); // 循环猜数直到猜对 while (1) { printf(请输入你的猜测); scanf(%d, guess); if (guess random_num) { printf(猜大了再小一点~\n); } else if (guess random_num) { printf(猜小了再大一点~\n); } else { printf(恭喜你猜对啦\n); break; } } }四、main.c 主函数文件#define _CRT_SECURE_NO_WARNINGS 1 #include game.h int main() { int choice 0; // 设置随机数种子只需要程序启动执行1次 srand((unsigned int)time(NULL)); while (1) { menu(); printf(请输入你的选择); scanf(%d, choice); switch (choice) { case 1: game(); break; case 0: printf(退出游戏再见\n); return 0; default: printf(输入错误请重新选择\n); break; } } return 0; }五、VS 多文件规范说明#pragma once放在game.h第一行防止头文件重复包含报错#define _CRT_SECURE_NO_WARNINGS 1放在.c文件第一行解决 VSscanf 安全报错.c文件引用自己的头文件用#include game.h双引号本地自定义头文件srand()必须只在 main 里执行 1 次不能放在 game 函数里否则随机数会固定不变六、运行效果弹出菜单选择 1 开始游戏不断提示猜大 / 猜小猜对结束一局可以无限循环玩选择 0 退出程序

更多文章