猜数字游戏
今天分享一个在学习C语言阶段可以练练手的小项目,可以让学习编程的朋友更有动力。如有不足,请提出建议!
- 做任何一个项目或者程序,无论大小,都需要做好前期构思准备,中期实现每个部分,后期完善并且查缺补漏。
前期准备:猜数字游戏,需要的玩家与电脑进行数字匹配,电脑出一个随机值,玩家输入,电脑判定。
-可以画个流程图
中期代码实现:一般习惯使用一个头文件,俩个源文件。
game.h头文件
#define _CRT_SECURE_NO_WARNINGS 1 //调用输入输出的头文件 #include<stdio.h> //调用随机值的头文件 #include<stdlib.h> //调用时间的头文件 #include<time.h> //菜单1:进入游戏|退出游戏 void menu1(); //菜单2:再次进入游戏|退出游戏 void menu2(); //游戏主题 void game();
- operate.c源文件
#include"game.h" int main(void) { //调用随机值 srand((unsigned int) time(NULL)); int imput = 0; //初次玩游戏 menu1(); printf("请输入数字:\n"); scanf("%d",&imput); switch (imput) { case 1: game(); break; case 0: printf("感谢你的游玩!\n"); break; default: printf("输入错误!请重新输入:\n"); break; } //再次游玩 do { menu2(); printf("请输入数字:\n"); scanf("%d", &imput); switch (imput) { case 1: game(); break; case 0: printf("感谢你的游玩!\n"); break; default: printf("输入错误!请重新输入:\n"); break; } } while (imput); return 0; }
game.c源文件
#include"game.h" //菜单1 void menu1() { printf("************************\n"); printf("******** 1.game ********\n"); printf("******** 0.exit ********\n"); printf("************************\n"); } //菜单2 void menu2() { printf("*************************\n"); printf("******** 1.again ********\n"); printf("******** 0.exit ********\n"); printf("*************************\n"); } //进入游戏 void game() { //设置一个1-100的值 int rand_num = rand() % 100 + 1; int count = 0; do { int imput = 0; //设置一个计数器,设置超过7次游戏结束 printf("请猜猜数字:\n"); scanf("%d", &imput); //与系统设定的值比较大小 if (imput > rand_num) { count++; printf("不好意思!猜大了!\n"); } else if (imput < rand_num) { count++; printf("不好意思!猜小了!\n"); } else { count++; break; } //判定判断次数是否为7,7次后退出 if (count > 7) { break; } } while (1); //判断次数,输出 if (count > 7) { printf("不好意思!您失败了!\n"); printf("真正的数字是%d \n",rand_num); } else { printf("恭喜您!猜对了!\n"); printf("您一共猜了%d次。\n",count); } }
后期运行结果:
这里无法演示后期完善过程,写好代码后,需要一次一次的修改和完善,所以希望大家好好加油!