猜数字游戏
Posted 语风之
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了猜数字游戏相关的知识,希望对你有一定的参考价值。
猜数字游戏
系统生成以[1,100]为区间的随机整数,要求人猜数字,涉及到了switch多路选择和while循环, 在调试的过程中可以更深的理解到while循环运行规则和break跳出语句。
其中srand((unsigned)time(NULL));//生成随机数种子 ,int ret = rand() % 100 + 1;//生成随机数为生成随机数的相关代码
代码:
#pragma warning(disable:4996)//scanf,strcpy等函数若使用不当,可能存在内存泄漏等问题,
#include<stdio.h> //推荐使用安全版本,即函数名后面加_s,若不使用,可以加
#include<stdlib.h> //#pragma warning(disable:4996)关闭警告
#include<time.h>
#include<windows.h>
void menu(){
printf("+-------------------------------+\\n");
printf("|----------1、猜随机数----------|\\n");
printf("|----------2、退出系统----------|\\n");
printf("+-------------------------------+\\n");
}
void game(){
int ret = rand() % 100 + 1;//生成随机数
int num = 0;
while (1){//无限循环
printf("猜测数字:");
scanf("%d",&num);
if (num==ret){
printf("猜对了\\n");
break;//猜中了,跳出循环
}
if (num>ret){
printf("猜大了\\n");
}
if (num<ret){
printf("猜小了\\n");//没有猜中给出提示,继续猜
}
}
}
int main(){
int input = 0;
srand((unsigned)time(NULL));//生成随机数种子
do{
menu();
printf("输入选项:");
scanf("%d",&input);
switch(input){
case 1:
game();
break;
case 2:
printf("退出系统\\n");
break;
default:
printf("输入错误,请重输\\n");
}
} while (input-2);//while语句先执行表达式,根据结果判断真假
system("pause");
return 0;
}
运行结果:
小小的总结:
从新人一枚做起,敲代码的过程是痛并快乐的,敲代码的过程里冥思苦想(挠头)找错误,在代码终于正常运行以后不免有一种成就感并发出感叹,真爽!加油,继续努力建设。
以上是关于猜数字游戏的主要内容,如果未能解决你的问题,请参考以下文章