前期学习目标:
基础:掌握 C++ 基础知识(一个月)
练习:每周四天练习代码编码能力
学习内容:
1、 掌握注释、变量、常量、关键字、标识符命名规则。
2、 学习并掌握常用数据类型、运算符规则、程序流程结构。
3、 数组、函数的使用、指针的使用、结构体的定义和使用。
4、 练习猜数字案例
学习产出:
1、 做自学笔记
2、定期写博客复盘复习
3、 学习的内容前进一各部分
猜数字游戏
1>必备知识:
C++程序基本框架、
定义整型数据变量、使用标准输入流、设置随机种子,C++中rand() 函数的用法,while语句、if-else语句,跳转语句break使用
2>设计思路:
//设置一个随机数
//输入你猜的数
//循环比较(但比随机数大输出猜测过大,否则输出猜测过小,猜测正确则跳出循环)
3>代码实现:
#include<iostream>
using namespace std;
#include<ctime> //可使用当前时间使随机数发生器随机化
int main()
{
srand((unsigned int)time(NULL)); //添加随机种子,作用是利用当前系统时间生成随机数,防止每次生成随机数一样。
int num = rand ()%100+1; //生成0到100以内的任意随机数。
//cout << num <<endl;
int value =0;
cout <<"请玩家输入猜测数字"<<endl;
while (1)
{
cin>>value; //玩家输入数字
if(value>num)
{
cout <<"猜测过大"<<endl;
}
else if (value <num)
{
cout <<"猜测过小"<<endl;
}
else
{
cout<<"猜测正确"<<endl;
break; //猜测正确,跳出循环,游戏结束。
}
}
system("pause");
}
4>运行结果:
补充C++中rand() 函数的用法:
1、rand()不需要参数,它会返回一个从0到最大随机数的任意整数,最大随机数的大小通常是固定的一个大整数。
2、语法表示为:int num = rand() % n +a;一般性:rand() % (b-a+1)+ a ; 就表示 a~b 之间的一个随机整数。 其中的a是起始值,n-1+a是终止值,n是整数的范围。
3、若要产生01之间的小数,则可以先取得010的整数,然后均除以10即可得到“随机到十分位”的10个随机小数。
若要得到“随机到百分位”的随机小数,则需要先得到0~100的10个整数,然后均除以100,其它情况依 此类推。
4、通常rand()产生的随机数在每次运行的时候都是与上一次相同的,这样是为了便于程序的调试。若要产生每次不同的随机数,则可以使用srand( seed )函数进行产生随机化种子,随着seed的不同,就能够产生不同的随机数。
5、需要包含time.h头文件,然后使用srand(time(0))来使用当前时间使随机数发生器随机化,这样就可以保证每两次运行时可以得到不同的随机数序列,同时这要求程序的两次运行的间隔超过1秒。