标题:大佬们 C语言 猜数字游戏求教
只看楼主
wuxiami
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2022-7-17
结帖率:100%
已结贴  问题点数:20 回复次数:2 
大佬们 C语言 猜数字游戏求教
C语言

做一个猜数字的游戏,数字为4位,先用 rand 生成一个随机四位的答案,再由用户输入四位数字,计算机进行判断,如果猜测的不正确,计算机要告诉用户,用户猜
      的数字,其中有几个数字的数值和位置是和正确的数字是一样的,有几个数字的数值和正确的数字一样,但是位置不
      一样。
      如正确的数字为7258
      用户输入1349的时候,计算机弹出提示:有0个数字完全符合,有0个数字位置错误
      用户输入1347的时候,计算机弹出提示:有0个数字完全符合,有1个数字位置错误
      用户输入7081的时候,计算机弹出提示:有1个数字完全符合,有1个数字位置错误
      用户输入2222的时候,计算机弹出提示:有1个数字完全符合,有3个数字位置错误
      用户输入8275的时候,计算机弹出提示:有1个数字完全符合,有3个数字位置错误
      用户输入7258的时候,计算机弹出提示:恭喜!经过6次尝试,您答对了!

c语言的  一直搞不懂两个四位数字比较的过程,中间的判断应该怎么搞

小白  求教各位大佬   多谢

[此贴子已经被作者于2022-7-27 15:51编辑过]

搜索更多相关主题的帖子: 计算机 位置 用户 数字 输入 
2022-07-27 15:44
op123
Rank: 6Rank: 6
等 级:贵宾
威 望:21
帖 子:170
专家分:461
注 册:2022-6-4
得分:20 
int main(){
   
    //定义变量
    int x;//随机生成数
    int n;//输入的数
    int s=0;//输入次数
    int a;//完全符合
    int b;//放置错误
    int g1,s1,b1,q1;//n的各个数位
    int g2,s2,b2,q2;//x的各个数位
    srand(time(0));//让随机生成数不重复
    x=rand()%8999+1000;
    //这样如果rand()得到0,x就是1000
    //这样如果rand()得到8999,x就是9999
    //这样就x的范围就在1000~9999之间
    g2=x%10;
    s2=x/10%10;
    b2=x/100%10;
    q2=x/1000;
   
    //输入
    while(true){
        cin>>n;
        a=0;//初始化
        b=0;//初始化
        if(n==x){//一样
            printf("恭喜!经过%d次尝试,您答对了!\n",s);
            break;
        }
        else{//不一样
            //我这里直接拆位
            g1=n%10;
            s1=n/10%10;
            b1=n/100%10;
            q1=n/1000;
            
            if(g1==g2)a++;
            if(s1==s2)a++;
            if(b1==b2)a++;
            if(q1==q2)a++;
            
            if(g1==s2||g1==b2||g1==q2)b++;
            if(s1==g2||s1==b2||s1==q2)b++;
            if(b1==g2||b1==s2||b1==q2)b++;
            if(q1==g2||q1==s2||q1==b2)b++;
            
            printf("有%d个数字完全符合,有%d个数字位置错误\n",a,b);
            s++;//次数增加
        }
    }
    return 0;
}

头文件我就不打了

[此贴子已经被作者于2022-7-27 17:54编辑过]

2022-07-27 17:52
wuxiami
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2022-7-17
得分:0 
回复 2楼 op123
多谢大佬
2022-07-27 20:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-509661-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.680089 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved