您的位置:首页 > 其它

第四周上机实践项目——项目3-随机数函数应用于游戏

2016-03-19 20:14 501 查看
/*
*Copyright (c)2016,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:main.cpp
*作    者:郭永恒
*完成日期:2016年3月19日
*版 本 号:v1.0
*
*问题描述:随机数应用于游戏
*(1):随机产生一个1000以内的数字,要求用户猜测这个数字,根据猜测结果,输出“大了”或“小了”的提示,直到猜出这个数为止
*(2):随机生成十道100以内加减乘除的题目,练习者输入答案,程序根据输入的答案判断对错,最后显示作对了几道题
*输入描述:输入用户猜测或计算结果
*输出描述:根据题目输出相应结果
*/

//问题(1)
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;

int main()
{
srand(time(NULL));
int us = 0;
int num = 0;
int count = 1;
num = rand()%1000;
for(;;)
{
cin >> us;
if(num == us)
break;
if(num > us)
{
cout << "小了" << endl;
count++;
}
else
{
cout << "大了" << endl;
count++;
}
}
cout << "共猜测" << count << "次得到正确结果" << endl;
return 0;
}

运行结果:



//问题(2)
#include<cstdio>
#include<ctime>
#include<cstdlib>

int main()
{
int iProcount = 1;
int iResultCount = 0;
int iTrueResult = 0;
int iInputResult = 0;
srand(time(NULL));
int iJudge = 0;
while(iProcount <= 10)
{
iJudge = rand()%4;
printf("第%d题:\n",iProcount);
int iOne = rand()%100;
int iTwo = rand()%100;
if(iJudge == 0)
{
iTrueResult = iOne + iTwo;
printf("%d+%d=",iOne,iTwo);
}
else if(iJudge == 1)
{
iTrueResult = iOne - iTwo;
printf("%d-%d=",iOne,iTwo);
}
else if(iJudge == 2)
{
here: iTrueResult = iOne * iTwo;
if(iOne*iTwo > 0)
{
iOne = rand()%100;
iTwo = rand()%100;
goto here;
}
printf("%d×%d=",iOne,iTwo);
}
else if(iJudge == 3)
{
there: iTrueResult = iOne / iTwo;
if(iOne%iTwo != 0)
{
iOne = rand()%100;
iTwo = rand()%100;
goto there;
}
printf("%d÷%d=",iOne,iTwo);
}
scanf("%d",&iInputResult);
if(iInputResult == iTrueResult)
{
printf("right!\n");
iResultCount++;
}
else
printf("wrong!\n");
iProcount++;
}
printf("共答对了%d道题,得分%d",iResultCount,iResultCount*10);
return 0;
}

运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: