gpt4 book ai didi

c - 范围内的随机发生器

转载 作者:行者123 更新时间:2023-11-30 15:47:26 25 4
gpt4 key购买 nike

嗨,我知道范围内的随机生成器已经存在一个问题,但我不明白。我是C初学者,只懂java。在这个程序中,我试图用 C 创建一个数学导师。该程序将随机生成从 1 到 10 的两个数字和一个运算符。它运行,但不显示下一行,并且一直显示错误的答案。另外,为什么VS2010说getch()未定义?这是代码:

 int ans;
int ans1;
int num1 = rand() % 10 + 2;
int num2 = rand() % 10;
int operation = rand() % 4;

printf("\tMATH TUTOR\n");
if(operation == 1){
printf("What is %d + %d ?", num1, operation, num2);
scanf_s("%d",ans1);
ans = num1 + num2;
if(ans != ans1){
printf("Incorrect! Try Again!");
do{
scanf_s("%d", &ans1);
}while( ans != ans);
}else{
printf("Correct!");
}
}else if(operation == 2){
printf("What is %d - %d ?", num1, operation, num2);
scanf_s("%d",&ans1);
ans = num1 - num2;
if(ans != ans1){
printf("Incorrect! Try Again!");
do{
scanf_s("%d", &ans1);
}while( ans != ans);
}else{
printf("Correct!");
}
}else if(operation == 3 ){
printf("What is %d * %d ?", num1, operation, num2);
scanf_s("%d",&ans1);
ans = num1 * num2;
if(ans != ans1){
printf("Incorrect! Try Again!");
do{
scanf_s("%d", &ans1);
}while( ans != ans);
}else{
printf("Correct!");
}
}else if(operation == 4){
printf("What is %d / %d ?", num1, operation, num2);
scanf_s("%d",&ans1);
ans = num1 / num2;
if(ans != ans1){
printf("Incorrect! Try Again!");
do{
scanf_s("%d", &ans1);
}while( ans != ans);
}else{
printf("Correct!");
}
}

getch();
return 0;
}

最佳答案

添加到约翰·谢里登的:getch()是许多 MS-DOS 编译器添加的 C 的非标准扩展。它通常在 <conio.h> 中定义。 。不知道VS2010默认是否支持。

关于c - 范围内的随机发生器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17391589/

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