gpt4 book ai didi

c - 发现 secret 号码时需要帮助终止程序

转载 作者:行者123 更新时间:2023-11-30 17:18:38 24 4
gpt4 key购买 nike

我正在尝试编写一个 C 程序,该程序使用一个将 2 个整数与随机数相加的函数。我在下面已经完成了。我的问题是,我将一个变量设置为一个 secret 数字,当找到该数字时,我需要程序终止,但它没有。

int x,y,secretnumber;

secretnumber = 5;

do
{
printf("Please enter two integers to be added together to a random number from 0-99 \n"
"Keep entering numbers until you hit the secret number!\n");
scanf("%i%i", &x, &y);

if(sumintsrand(x,y) != secretnumber)
{
printf("The summation of integers %i and %i and a random number is %i \n\n",x,y,sumintsrand(x,y));
}
else
{
printf("You have found the secret number: %i! Goodbye!\n", secretnumber);
}
}
while(sumintsrand(x,y) != secretnumber);

return 0;
}



int sumintsrand(int x, int y)
{

int sumintsrand = x + y + rand()%5;

return sumintsrand;
}

如果有人知道我哪里出了问题,我将非常感激

最佳答案

更新

我用我之前建议的 mod 编译了你的程序,并且我没有得到愚蠢的大数字,所以传递这个 - 不同的问题?

不断改变随机数似乎有点奇怪——同样的猜测可能会失败一次,但下次会起作用。另外,对于范围是 5 还是 99 也存在混淆。

所以我简化了你的工作,让你猜测两个数字之和等于 secret 数字。如果这不是您的意图,也许您可​​以借鉴我的代码。

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

#define MAXVAL 5

int main(){
int x, y, secretnumber, testval;
srand ((unsigned)time(NULL));
secretnumber = rand() % (MAXVAL+1);
do
{
printf("Enter two integers to be added to equal a secret random number from 0-%d\n"
"Keep entering numbers until you hit the secret number!\n", MAXVAL);
if (scanf("%d%d", &x, &y) != 2)
return 0; // exit program
testval = x + y;
if(testval != secretnumber)
printf("Sorry - try again!\n\n");
else
printf("You have found the secret number: %d + %d = %d! Goodbye!\n",
x, y, secretnumber);
}
while(testval != secretnumber);
return 0;
}

关于c - 发现 secret 号码时需要帮助终止程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29126669/

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