C++项目参考——猜数字游戏

简介: 【项目-猜数字游戏】通过本题学习一些系统函数。  随机产生一个1000内的数字,要求用户猜测这个整数。输入一个猜测想的整数,判断是否与产生的随机数相等,由屏幕显示判断结果。如果猜得不对,给出“大了”或“小了”的提示,直到猜出这个数为止。(可以再加一个要求,猜了几次才得到正确结果。)参考解答:#include <iostream>#include<ctime>

【项目-猜数字游戏】通过本题学习一些系统函数。

  随机产生一个1000内的数字,要求用户猜测这个整数。输入一个猜测想的整数,判断是否与产生的随机数相等,由屏幕显示判断结果。如果猜得不对,给出“大了”或“小了”的提示,直到猜出这个数为止。(可以再加一个要求,猜了几次才得到正确结果。)

参考解答:

#include <iostream>
#include<ctime>
#include<cstdlib>
using namespace std;
int main(void)
{
    int n,num,count=1;
    srand(time(0)); //time(0)返回值作种子
    num=rand()%1000;
    do
    {
        cout<<"猜一个数:";
        cin>>n;
        if(n==num)
            break;
        else if(n>num)
            cout<<"大了!"<<endl;
        else
            cout<<"小了!"<<endl;
        count++;
    }while(true);
    cout<<"历经"<<count<<"次,猜对了。"<<endl;
    return 0;
}

下面是一个被同学们普遍采用的错误版本。在相互的参考当中,以及从网络上找到帮助之中,还要自己学会阅读和分析代码。

我在程序中做了些注释,请同学们思考。在http://blog.csdn.net/u012369599/article/details/16830477中我和那篇文章的主人做了些交流,可参阅。

#include <iostream>
#include<ctime>
#include<cstdlib>
using namespace std;

int main()
{
    int i,n,s,num=0;
    srand(time(0));
    cin>>s;
    for(i=0; i<1; i++) //——这个只能“循环”一次,i++之后i<1将为假,何用?
    {
        n=rand()%1000;
        while(s>n)  //如果猜的数一直偏大,就这样处理,似乎还有理
        {
            cout<<"你输大了,再小一点!"<<endl;
            cin>>s;
            num++;
        }
        while(s<n)  //猜小了将落入这个循环。可是,再猜大了呢?
        {
            cout<<"你输小了,再大一点!"<<endl;
            cin>>s;
            num++;
        }  //两趟while循环下来,只能“单向”的太大或太小,多运行两次你会发现,猜小了之后只要再猜大一次了,一定说正确。
    }
    cout<<"恭喜你,输入正确"<<"共输入"<<num<<"次"<<endl;
    return 0;
}


目录
相关文章
|
1月前
|
人工智能 算法 BI
第十四届蓝桥杯省赛大学C组(C/C++)三国游戏
第十四届蓝桥杯省赛大学C组(C/C++)三国游戏
WK
|
10天前
|
机器学习/深度学习 人工智能 算法
那C++适合开发哪些项目
C++ 是一种功能强大、应用广泛的编程语言,适合开发多种类型的项目。它在游戏开发、操作系统、嵌入式系统、科学计算、金融、图形图像处理、数据库管理、网络通信、人工智能、虚拟现实、航空航天等领域都有广泛应用。C++ 以其高性能、内存管理和跨平台兼容性等优势,成为众多开发者的选择。
WK
32 1
|
28天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
234 3
|
2月前
|
C++
【C++案例】一个项目掌握C++基础-通讯录管理系统
这篇文章通过一个通讯录管理系统的C++项目案例,详细介绍了如何使用C++实现添加、显示、删除、查找、修改和清空联系人等功能。
39 3
|
1月前
|
人工智能 算法 Java
【搜索算法】数字游戏(C/C++)
【搜索算法】数字游戏(C/C++)
|
2月前
|
图形学 C++ C#
Unity插件开发全攻略:从零起步教你用C++扩展游戏功能,解锁Unity新玩法的详细步骤与实战技巧大公开
【8月更文挑战第31天】Unity 是一款功能强大的游戏开发引擎,支持多平台发布并拥有丰富的插件生态系统。本文介绍 Unity 插件开发基础,帮助读者从零开始编写自定义插件以扩展其功能。插件通常用 C++ 编写,通过 Mono C# 运行时调用,需在不同平台上编译。文中详细讲解了开发环境搭建、简单插件编写及在 Unity 中调用的方法,包括创建 C# 封装脚本和处理跨平台问题,助力开发者提升游戏开发效率。
174 0
|
4月前
|
Rust 测试技术 编译器
Rust与C++的区别及使用问题之Rust项目中组织目录结构的问题如何解决
Rust与C++的区别及使用问题之Rust项目中组织目录结构的问题如何解决
|
3月前
|
编译器 C++ 开发者
Visual Studio属性表:在新项目中加入已配置好的C++库
通过以上步骤可以确保Visual Studio中新项目成功地加入了之前已配置好的C++库。这个过程帮助开发者有效地管理多个项目中共享的库文件,提升开发效率。
81 0
|
4月前
|
Java C++ 开发者
如何根据项目需求选择使用C++还是Python进行内存管理?
【7月更文挑战第2天】如何根据项目需求选择使用C++还是Python进行内存管理?
47 0
|
1天前
|
存储 编译器 Linux
【c++】类和对象(上)(类的定义格式、访问限定符、类域、类的实例化、对象的内存大小、this指针)
本文介绍了C++中的类和对象,包括类的概念、定义格式、访问限定符、类域、对象的创建及内存大小、以及this指针。通过示例代码详细解释了类的定义、成员函数和成员变量的作用,以及如何使用访问限定符控制成员的访问权限。此外,还讨论了对象的内存分配规则和this指针的使用场景,帮助读者深入理解面向对象编程的核心概念。
10 4