c语言猜数游戏1到100程序结果与原意不符? 5

我制作了一个C语言程序,7次机会猜程序所产生的1到100中的随机数,一轮结束后按y键可以重新开始一轮,但程序结果与原意不符,是哪出错了程序代码:#include<stdi... 我制作了一个C语言程序,7次机会猜程序所产生的1到100中的随机数,一轮结束后按y键可以重新开始一轮,但程序结果与原意不符,是哪出错了程序代码:#include<stdio.h>#include<stdlib.h>#include<time.h>int main(){ srand(time(NULL)); printf("游戏介绍:\n"); printf("猜出游戏中随机产生的1到100中的任意一个整数,\n"); printf("每次游戏有7次机会,如果次数用完并没猜出数字,\n"); printf("则自动公布产生整数\n"); printf("开始游戏?(y/n)\n"); char w; char ch; while (ch = getchar()) { if (ch == 'n') return 0; else if (ch == 'y') break; else continue; } w = ch; while (w == 'y') { int x; x = rand() % 100 + 1; int t = 7, n, num; for (n = 1; n <= 7; ++n) { printf("第%d次机会,请输入数字:", n); scanf_s("%d", &num); if (n == 7 && num != x) printf("很遗憾,本次随机数为%d", x); break; if (num < x) { printf("小了\n"); continue; } else if (num > x) { printf("大了\n"); continue; } else if (num == x) { printf("恭喜你,猜对了!\n"); printf("本次随机数为%d", x); break; } else continue; } printf("再来一次吗?(y/n)"); while (w = getchar()) { if (w == 'y') break; else if (w == 'n') return 0; else continue; } } return 0;} 展开
 我来答
米食天下佳人4448
2020-03-07 · TA获得超过1589个赞
知道大有可为答主
回答量:5538
采纳率:85%
帮助的人:190万
展开全部


曾经帮别人答过,代码如下:


#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    int nAppValue, nUserValue, iCount = 0;
    srand( time( 0 ) );
    nAppValue = rand() % 100 + 1;
    printf( "请猜我选中的是哪个数字(1-100)?\n" );
    do
    {
        scanf( "%d", &nUserValue );
        ++iCount;
        if( nUserValue == nAppValue )
        {
            printf( "猜了%d次, 猜中了!\n",iCount );
            break;
        }
        else if( nUserValue > nAppValue )
        {
            printf( "错了!再小点, 继续猜!\n" );
        }
        else
        {
            printf( "错了!再大点!继续猜!\n" );
        }
    }while(1);
    printf( "游戏结束!\n" );
    return 0;
}




推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式