产生垃圾值的随机数 #包括 #包括 #包括 int main(){ srand(时间(0)); int random=0,猜测,猜测=1; random=rand()%100+1; printf(“号码已生成。输入0退出。\n”); 做{ scanf(“%d”,&guess);//接受用户输入进行猜测 如果(猜测>随机和猜测!=0) printf(“下!\n”); 其他的 if(猜测
每当我显示随机变量时,当它已经生成一个数字时,就会输出一个垃圾值。但是代码片段用于检查猜测和随机数之间的比较,我似乎无法正确输出随机数产生垃圾值的随机数 #包括 #包括 #包括 int main(){ srand(时间(0)); int random=0,猜测,猜测=1; random=rand()%100+1; printf(“号码已生成。输入0退出。\n”); 做{ scanf(“%d”,&guess);//接受用户输入进行猜测 如果(猜测>随机和猜测!=0) printf(“下!\n”); 其他的 if(猜测,c,random,C,Random,每当我显示随机变量时,当它已经生成一个数字时,就会输出一个垃圾值。但是代码片段用于检查猜测和随机数之间的比较,我似乎无法正确输出随机数 %d在printf中需要一个int数据类型的参数。您正在传递int*数据类型(&random)。 在最后两个printfs中,在random之前删除和 #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { srand(time(0
%d
在printf
中需要一个int
数据类型的参数。您正在传递int*
数据类型(&random
)。在最后两个
printf
s中,在random
之前删除和
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
srand(time(0));
int random = 0, guess, guesses = 1;
random = rand() % 100 + 1;
printf("The number has been generated. Input 0 to quit.\n");
do {
scanf("%d", &guess); //takes user input for guess
if (guess > random && guess != 0)
printf("Lower!\n");
else
if (guess < random && guess != 0)
printf("Higher!\n");
else
if (guess == random) {
printf("Bingo!");
return 0;
} else
if (guess == 0) {
printf("Thanks for playing, the number was %d\n", &random);
return 0;
}
guesses++;
} while (guesses != 6); //maximum of 5 guesses
printf("Thanks for playing, the number was %d\n", &random);
return 0;
}
printf
中的%d
需要int
数据类型的参数。您正在传递int*
数据类型(&random
)。
在最后两个printf
s中,在random
之前删除和
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
srand(time(0));
int random = 0, guess, guesses = 1;
random = rand() % 100 + 1;
printf("The number has been generated. Input 0 to quit.\n");
do {
scanf("%d", &guess); //takes user input for guess
if (guess > random && guess != 0)
printf("Lower!\n");
else
if (guess < random && guess != 0)
printf("Higher!\n");
else
if (guess == random) {
printf("Bingo!");
return 0;
} else
if (guess == 0) {
printf("Thanks for playing, the number was %d\n", &random);
return 0;
}
guesses++;
} while (guesses != 6); //maximum of 5 guesses
printf("Thanks for playing, the number was %d\n", &random);
return 0;
}
您应该传递random
的值,而不是它的地址:
printf("Thanks for playing, the number was %d\n", random);
还请注意,您应该检查scanf()
的返回值:如果您键入一个字母,程序将具有未定义的行为,它可能在迭代5次后退出,或者永远迭代,或者完全执行其他操作
以下是一个改进的版本:
printf("Thanks for playing, the number was %d\n", random);
#包括
#包括
#包括
内部主(空){
int随机,猜,猜;
srand(时间(0));
random=rand()%100+1;
printf(“号码已生成。输入0退出。\n”);
对于(猜测=0;猜测<5;猜测++){
//使用用户输入进行猜测
如果(scanf(“%d”,&guess)!=1 | | guess==0)
打破
如果(猜测>随机){
printf(“下!\n”);
}否则
如果(猜测<随机){
printf(“更高!\n”);
}否则{
printf(“宾果!\n”);
返回0;
}
}
printf(“感谢您的播放,数字是%d\n”,随机);
返回0;
}
您应该传递random
的值,而不是它的地址:
printf("Thanks for playing, the number was %d\n", random);
还请注意,您应该检查scanf()
的返回值:如果您键入一个字母,程序将具有未定义的行为,它可能在迭代5次后退出,或者永远迭代,或者完全执行其他操作
以下是一个改进的版本:
printf("Thanks for playing, the number was %d\n", random);
#包括
#包括
#包括
内部主(空){
int随机,猜,猜;
srand(时间(0));
random=rand()%100+1;
printf(“号码已生成。输入0退出。\n”);
对于(猜测=0;猜测<5;猜测++){
//使用用户输入进行猜测
如果(scanf(“%d”,&guess)!=1 | | guess==0)
打破
如果(猜测>随机){
printf(“下!\n”);
}否则
如果(猜测<随机){
printf(“更高!\n”);
}否则{
printf(“宾果!\n”);
返回0;
}
}
printf(“感谢您的播放,数字是%d\n”,随机);
返回0;
}
欢迎来到堆栈溢出。请注意,在这里说“谢谢”的首选方式是投票选出好的问题和有用的答案(一旦你有足够的声誉这么做),并接受对你提出的任何问题最有用的答案(这也会给你的声誉带来一点提升)。请查看该页面,以及@user1937219:您可以通过单击分数下方的灰色复选标记接受其中一个答案。欢迎使用堆栈溢出。请注意,在这里说“谢谢”的首选方式是投票选出好的问题和有用的答案(一旦你有足够的声誉这么做),并接受对你提出的任何问题最有用的答案(这也会给你的声誉带来一点提升)。请查看页面,以及@user1937219:您可以通过单击分数下方的灰色复选标记接受其中一个答案。您正在打印变量的地址而不是其值。您正在打印变量的地址而不是其值。