C++高级程序语言编辑猜数游戏:电脑随机产生介于1到9间的一位数字我来猜,5次机会,电脑提示大了还是小了

如题所述

第1个回答  2013-04-10
//以下代码调试通过
#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
int num[9] = {5,6,7,8,9,1,2,3,4};
int main(){
int a,b;
//根据系统时间获得随机数种子以便每次都有不同的随机数
//注意:这里不用srand()而直接rand会每次产生一样的数!!
srand((unsigned)time(NULL));
a= num[rand()%9];
cout<<"请输入猜测,五次机会"<<endl;
for(int i =0;i<5;++i){
cin>>b;
if(a == b){
cout<<"猜测成功!数字为:"<<a<<endl;
break;
}
else if(b <a ){
cout<<"猜测小了!还有"<<(5-i-1)<<"次机会"<<endl;
}
else{
cout<<"猜测大了!还有"<<(5-i-1)<<"次机会"<<endl;
}
}
cout<<"很遗憾!没有成功 ^ ^"<<endl;

system("PAUSE");
return 0;
}本回答被提问者采纳
第2个回答  2013-04-10
囧掉了,15分钟木有打出来~~
#include <iostream>
#include <math.h>
#include <stdlib.h>
using namespace std;
int main()
{
int s=rand()%9+1;
int p,t=0;
string u[6]={"","一","二","三","四","五"};
cout <<"猜数字游戏,请输入1-9的数字"<<endl;
do
{
cout <<"第"<<u[++t]<<"次尝试:";
cin >>p;
if (p>s)
{
cout <<"你猜大了!";
}
else if (p<s)
{
cout <<"你猜小了!";
}
}while (p!=s && t!=5);
if (p==s)
{
cout <<"你猜对了"<<endl;
}
else
{
cout <<"你真笨,5次机会都猜不出来!";
}
return 0;
}
第3个回答  2013-04-10
画个text1和command1

Private Sub Command1_Click()
Dim a As Long
a = Rnd * 100
MsgBox IIf(a = Val(Text1), "你猜对了,数字是:" & a, "你猜错了,正确答案是:" & a)
End Sub
希望采纳本回答被网友采纳
第4个回答  2013-04-10
思路就是二分法。
先猜5
提示大或者小
根据提示进行大或者小的分段。再猜中间的,直到猜对或者只剩一个了

C++高级程序语言编辑猜数游戏:电脑随机产生介于1到9间的一位数字我来...
using namespace std;int num[9] = {5,6,7,8,9,1,2,3,4};int main(){ int a,b;\/\/根据系统时间获得随机数种子以便每次都有不同的随机数 \/\/注意:这里不用srand()而直接rand会每次产生一样的数!!srand((unsigned)time(NULL));a= num[rand()%9];cout<<"请输入猜测,五次机会"<...

随机生成一个0~9之间整数,连续5次,组合成五位数的表达式是?
首先说明一下,单纯用表达式是无法实现5次随机数构成5位数目标的。以fortran代码做例子,说明用程序方法如何实现(感叹号后是说明):integer m real x ! 根据系统时间初始化随机数 ! 保证每次产生不同随机序列 call random_seed()! 产生首位数字,确保不为0 do while(m==0)call random_number(x)m...

用汇编语言编译程序任意输入1到9之间的一位数字n 求从1开始连续n个奇 ...
mov ah,1 int 21h ;1号功能调用,输入一个1-9的数字字符 and al,0fh ;将数字字符转换成数值 mov cl,al xor ch,ch ;将输入的数值放到cl,并将ch清零,即将输入的数值存放到cx中 mov bl,1 ;bl置为1,bl存放奇数 xor al,al ;al作为累加寄存器,清零 next: add al,bl ...

C语言编程编写一程序, 求Sn= a+aa+aaa+…+aaa…aaa(n个a)的值,其中a...
include<iostream>\/\/ n+1 代表的是位数,从0开始,即n=0代表一位int getValue(int a, int n) { int temp = a; while (n > 0) { temp = temp * 10 + a; n--; } return temp;}int main() { using namespace std; int a, n,result = 0; int ...

怎样生成0到99之间的随机数字?
1. 首先,请确定您要使用的区间的最小值和最大值。2. 输入一个包含该区间所有可能值的列表,例如,在单元格 A1 到 A10 中输入 1 到 10 的数字。3. 在单元格 B1 中输入以下公式:=RAND()*(MAX(A$1:A$10)-MIN(A$1:A$10))+MIN(A$1:A$10)。这个公式会生成一个介于最小值和最大...

如何用C++写一个随机抽取1到5之间的代码(最好有附带解释的)
rand()产生的数字范围是很大。而RAND_MAX是产生的随机数中最大的值。这样+(int)(5*rand())\/(RAND_MAX+1)的范围就是0~4,再加上1便是1~5.我特地使用一个while(i<5)就是想让你看一下随机出来的数字效果。如果还有什么不明白的我再帮你解答。

C语言。。下边这个猜数字游戏运行不了,提示random是未定义的标识符
(1)如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为2147483647。(2)如果你要随机生成一个在一定范围的数,你可以在宏定义中定义一个random(int number)函数,然后在main()里面直接调用random(...

求助求助~~C++编程。随意输入一个正整数N,计算从1~N之间0、1、2、3...
){ int i,n,num,a[10]={0};\/\/定义变量,初始化数组a为零 cin>>n;for (i=1;i<=n;i++){ num=i;while (num) \/\/统计0..9数字出现的次数 { a[num%10]++;num\/=10;} } for (i=0;i<10;i++) \/\/输出统计数据 cout<<i<<" 出现次数: "<<a[i]<<endl;} ...

跪求编写一个JAVA程序,求出1~100之间所有能被3整除的整数和
publicclassFloraLinlin{ publicintsumTotal(){ inttotal=0;for ( int i = 0; i <=100; i++ ){ if(imod3==0){ total=total+i;} } returntotal;} }

C++产生随机数的
\\x0d\\x0a\\x0d\\x0aC++中常用rand()函数生成随机数,但严格意义上来讲生成的只是伪随机数(pseudo-random integral number)。生成随机数时需要我们指定一个种子,如果在程序内循环,那么下一次生成随机数时调用上一次的结果作为种子。但如果分两次执行程序,那么由于种子相同,生成的“随机数”也是相同...

相似回答
大家正在搜