C语言编程:猜数字游戏

时间:2014.06.08 发布人:

C语言编程:猜数字游戏

已解决问题

谷歌用户在2014.06.08提交了关于“捷克火商售C语言编程:猜数字游戏”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-02-14T03:08:47。

1、随机生成没有重复的4个数字(每个数字在0~9范围内)

2、用户从键盘输入4个不重复的数。程序能对用户输入的数与随机生成的数进行匹配,并给出提示信息:“有x个数数值和位置都相同!有y个数数值相同,但位置不同。”

3、控制用户的尝试次数为10次。

4、计算、输出并保存用户的的分,计分规则:总分是100分,没失败一次扣10分。


希望大家能够帮助她。

详细问题描述及疑问:

1、随机生成没有重复的4个数字(每个数字在0~9范围内)

2、用户从键盘输入4个不重复的数。程序能对用户输入的数与随机生成的数进行匹配,并给出提示信息:“有x个数数值和位置都相同!有y个数数值相同,但位置不同。”

3、控制用户的尝试次数为10次。

4、计算、输出并保存用户的的分,计分规则:总分是100分,没失败一次扣10分。


期待您的答案,谢谢你帮我,祝你快乐,愿你事事如意 !
希望以下的回答,能够帮助你。

第1个回答

用户名:puppet_master  

#include<iostream>

usingnamespacestd;

intmain()

{

int**m[4];

for(inti渐应=0;i<4;i++)

{

inttemp=rand()%10;//随机数生成

boolflag=0;

for(intj=0;j<=i;j++)

{

if(**m[j]==temp)

flag=1;

}

if(flag==0)

**m[i]=temp;//检查之前是否来自有重复,如果没有则存入问答**m

}


intgrade=10谁父取露最单远挥故厚0;//成绩

for(intt=0;t<10;t++)//循环10次

{

intcount1=0;//位置数旨相

intcount2=0;//数值相同但位置不同

inta[4];

cout<<"请输入四个数"<<endl;

for(i=0;i<4;i++)

{

cin>>a[i];

}

for(i=0;i<4稳是论掌余顶项威汽;i++)

{

if(a[i]==**m[i])//如果位置数旨相同

{

count1++;

}

else

{

for(intj=i;j<4;度程志洋难段伟尽功开j++)//否则看是否有只有数值相同的

{

if(a[i]==**m[j])

count2++;

}

}

}

cout<<"位置数货汽顺两抓必治点衡旨相同的"<<c推吸念剂露体木角绿ount1<<endl;

cout<<"数值相同但位置不同的"<<count2<<endl;

if(count1!=4)

{

grade=grade-10;

}

cout<<"当前得分"<<grade<<endl;

}

}

用C++写的,大概意思差不多,理解想法就好晶杀刘例需脚。还有那个rand函数,最以换谓买好写个用时间做种子的,那样能虽调案额陆每次**生的都不一样