gpt4 book ai didi

C - 编程 HI-LO 游戏

转载 作者:行者123 更新时间:2023-11-30 18:46:12 27 4
gpt4 key购买 nike

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
#include <time.h>
#include <windows.h>
#include <stdlib.h>
#include <ctype.h>
#define PI 3.14159
#define PLANK_CONSTANT 6.626E-034
#define MASS_OF_ELECTRONS 9.109E-031
#define VELOCITY_OF_LIGHT 299800000

void hilo();

int main()
{
char check;

while (1)
{
hilo();
printf("Would you like to play again (y/n)? ");
scanf('%c', &check);
if (check != 'y' || check != 'y')
{
break;
}
}

system("pause");
return 0;
}

void hilo()
{
srand(time(NULL));

int count = 0;
int guess;
int randomnumber = rand() % 101;

while (1)
{
printf("Guess the number: ");
scanf("%d", &guess);

if (guess == randomnumber)
{
printf("Hooray, you have won!\n");
break;
}

if (guess < randomnumber)
printf("Wrong Number, Try again! The number you guessed is too low\n");
if (guess > randomnumber)
printf("Wrong Number, Try again! The number you guessed is too high\n");

count++;

if (count == 7)
{
printf("Sorry you lose, the number is: %d\n", randomnumber);
break;
}
}
}

有人可以帮我解决这个问题吗?猜测数字 7 次并“中断”后,C 表示出现错误“ALLlabs.exe 中 0x586A4B02 (ucrtbased.dll) 抛出异常:0xC0000005:访问冲突读取位置 0x00002563。”

我试图到处搜索中断的问题是什么,但我找不到问题所在。你们能告诉我代码有什么问题吗?你可以复制代码自己尝试一下。

最佳答案

就是这一行:

scanf('%c', &check);

它使用单引号 - 因此“%c”变成数字,而不是字符串。

试试这个:

scanf(" %c", &check);

记住在启用所有警告的情况下进行编译。不要忽略编译器警告!

some notes关于使用 "%c" 之前的空格。

关于C - 编程 HI-LO 游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52603490/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com