编程记录,关于B站上鹏哥C语言课程中的练习记录
记录内容:C语言实现猜数字游戏(关于do-while循环)

第一步,关于猜数字游戏整体框架

  • 1.menu()函数打印菜单进行动作指示。
  • 2.game()函数内容为主要的判断数字正确与否的内容。
  • 3.main()函数即运行过程。

第二步,具体内容

  • 关于菜单打印
    菜单可以循环出现,涉及循环语句do-while,直到用户输入0时程序完全结束。
    循环开始首先打印菜单。
    涉及条件语句,采用switch语句,输入1,进入game()开始游戏;输入0,退出循环;输入其他数字,显示输入错误要求重新输入,并且清空当前页面。
  • 关于游戏内容
    首先是关于随机数的生成,通过随机数来进行猜数游戏
    使用rand函数生成随机数,并且将随机数介于1-100之间
    仅使用rand函数每次随机数相同,要再加入srand一起使用,且加上 stdlib.h头文件
Example/* RAND.C: This program seeds the random-number generator* with the time, then displays 10 random integers.*/#include <stdlib.h>
#include <stdio.h>
#include <time.h>void main( void )
{int i;/* Seed the random-number generator with current time so that* the numbers will be different every time we run.*/srand( (unsigned)time( NULL ) );/* Display 10 numbers. */for( i = 0;   i < 10;i++ )printf( "  %6d\n", rand() );
}

其中,需要为srand提供一个变换的参数才能生成随机数,time()作为时间戳提供参数,但time()本身返回值是int类型,而srand需要unsigned int类型,所以进行强制类型转换。
每次工程开始只需要进行一次初始值设置,所以srand语句不在循环内部。

随机数生成完成后,用户每次输入数字进行比较,并给出相应提示,最后得出正确结果即可。

最终代码如下

#include<stdio.h>
#include<windows.h>
#include <time.h>
#include<stdlib.h>void menu()
{printf("********************\n");printf("****** 1 play ******\n");printf("****** 0 exit ******\n");printf("********************\n");
}void game()
{int random_num = rand() % 100 + 1;//printf("%d", random_num);int input = 0;while (1){printf("请输入你所猜的数字:");scanf("%d", &input);if (input < random_num)printf("你的数字太小了!\n");else if(input>random_num)printf("你的数字太大了!\n");else{printf("恭喜猜对!\n");Sleep(2000);system("cls");   //完成后保持显示一会然后清屏break;}}}int main()
{int input = 0;srand((unsigned)time(NULL));do{menu();printf("输入操作要求(0/1):");scanf("%d", &input);switch (input){case 1:game();break;  //每一个case和default最好先都加上breakcase 0:break;default:printf("输入错误,请重新输入。\n");Sleep(500);system("cls");break;}}while (input); //input存在即input==1return 0;
}

C语言编程练习,猜数字游戏实现相关推荐

  1. c语言编程题猜数字游戏6题,c语言编程—猜数字游戏.doc

    c语言编程-猜数字游戏 计算机实习报告 面向过程编程 用C语言求解实际问题 一.问题描述 游戏类第15个任务--猜数字游戏 计算机从0-9这10个数字中任意选择n个不重复数字(n≤10)组成一个5位数 ...

  2. 1到100猜数字游戏规则c语言,[C语言课程设计猜数字游戏1.doc

    [C语言课程设计猜数字游戏1 课 程 设 计 报 告 课程名称 C语言程序设计报告 课题名称 猜数字游戏 专 业 电气工程及其自动化 班 级 1104 学 号 33 姓 名 张腾 指导教师 黄晓宇 丁 ...

  3. C语言习题:猜数字游戏(C语言随机数)

    C语言习题:猜数字游戏(C语言随机数) 需要了解C语言随机数的生成方法: 在C语言中比较常用的随机函数是 rand 函数,它可以随机的产生 0 ~ rand_max 的随机数,定义类型不同最大值也不同 ...

  4. c语言课程设计猜数字游戏报告,C语言课程设计-猜数字游戏报告.doc

    C语言课程设计-猜数字游戏报告 摘要 该软件在Windows系统上为玩家提供猜数字游戏的基本功能,游戏用户可以选择开始游.排行榜查看.帮助等主要功能.当用户选择开始游戏时,系统会提示用户排行榜上猜数字 ...

  5. c语言课程设计猜数字游戏报告,C语言课程设计猜数字游戏报告

    C语言课程设计猜数字游戏报告 C 语言课程设计----猜数字1摘 要该 软 件 在 Windows 系 统 上 为 玩 家 提 供 猜 数 字 游 戏的 基 本 功 能 , 游 戏 用 户 可 以 选 ...

  6. 如何用c语言实现【猜数字游戏】

    万里寻山历百艰而, 一朝见井纵九死以何辞. 不吃学习的苦,  就要吃生活的苦. 目录 ⌚一.前言 ⏰二.游戏逻辑 ⏳三.思维导图 ☎️四.游戏过程 ✒️ 五.代码分析 ⛳1.生成随机数的方法​ ⛳2. ...

  7. 猜数字小c语言游戏课程任务书,C语言课程设计猜数字游戏姚成.doc

    课 程 设 计 报 告 课程名称 C语言程序设计报告 课题名称 猜数字游戏 专 业 电气工程及其自动化 班 级 1104 学 号 23 姓 名 姚成 指导教师 黄晓宇 丁敬忠 谭小兰 2012年 6月 ...

  8. c语言实现通讯录_C语言实现双人猜数字游戏

    点击上方"学士科技",选择"设为星标" 资讯.技术干货第一时间送达! C语言合集(基础.进阶.高级)通通有,点我点我      C语言实例 01.C语言编写简单 ...

  9. c语言编写一个猜数字游戏编写

    1.C语言实现猜数字游戏: #define _CRT_SECURE_NO_WARNINGS//猜数字游戏: // 1.由电脑自动生成一个随机数字 // 2.猜数字#include <stdio. ...

  10. C语言写出猜数字游戏的代码

    猜数字游戏,即电脑生成随机数,根据用户输入猜大猜小最终实现猜对数字 思想:电脑生成随机数跟用户输入的那个数进行比较,若大了或者小了继续猜,这里可以写个死循环知道猜对才可以跳出来 代码如下所示: #in ...

最新文章

  1. Travis CI : 最小的分布式系统(一)
  2. Covariance and Contravariance in C#的搜索条件
  3. iOS抓取日志方式(1)
  4. Cause: java.sql.SQLException: ORA-00904: ID: 标识符无效
  5. Oralce删除多个表
  6. A Simple Math Problem
  7. 来自东软的 OpenStack 负载均衡即服务开源项目
  8. 第六十一期: 从7600万个5G连接中,我们发现了7种最有前景的5G物联网应用
  9. flutter 自定义键盘_掘金 AMA:听闲鱼客户端架构师邬吉风聊 Flutter 和移动端开发那些事...
  10. 【linux指令】sed指令
  11. 蓝桥杯 基础练习 FJ的字符串
  12. 思考题2(人车关系)
  13. php setheader,PHP-MPDF:如何删除setHeader()和setFooter()边框
  14. 【软工项目组】第十八次会议
  15. Python3.6读写串口操作
  16. Python POST登陆linkedin分析(完),完整实现过程
  17. AD快捷键还原为默认配置
  18. java数据类型之间的转换_Java数据类型之间的转换(转)
  19. 初遇项目网络平台架构设计方案
  20. Lab: Username enumeration via subtly different responses 通过细微的差别的响应来甄别用户名靶场复盘

热门文章

  1. Python 语言参考手册
  2. vue实现全国省市下拉联动菜单,适用于收货地址
  3. cmd长ping记录日志和时间_ping记录带时间戳
  4. 计算机等级考试网络工程师题库,计算机等级考试4级网络工程师习题库要点
  5. linux免采集卡直播ps4,ps4免采集卡直播方法
  6. win10 3dmax 激活后反复激活和激活码无效问题
  7. 用c语言将学生系统插入音效,增加音效.cpp
  8. 电子/硬件工程师手册
  9. VRay渲染器在复仇者联盟:无限战争中应用
  10. NERO9注册机使用