我对编程非常陌生并且目前正在开发一个程序(它已经没有接近完成)但是我无法弄清楚它是如何以及为什么不会起作用。我必须错过“如果'和'其他'
#include <stdio.h>
int main(void)
{
printf("Welcome to the ROBOT GAME!\n"
"Please enter the column of your starting point. Keep numbers in the range of one to three.\n");
int a, b;
if(1<=a<=3);
{
scanf("%i", &a);
}
else
{
printf("Sorry try again.");
}
printf("Please enter the row of your starting point. Keep numbers in the range of one to three.\n");
if(1>=b<=3);
scanf("%i", &b);
printf("What is your next move? Pick\n"
"1.Right\n"
"2.Left\n"
"3.Up\n"
"4.Down\n");
}
答案 0 :(得分:1)
第一个错误
int a, b;
if(1<=a<=3);
即使未初始化,如何在a
条件下检查if
?首先通过将值初始化为a
和b
(使用1
)修复此问题然后继续修复第二个错误
第二个错误
if(1<=a<=3);
在;
条件后移除if
,然后转到修复第三个错误
第三个错误
if(1<=a<=3);
不是想做你想做的事。它应该
if(a>= 1 && a <= 3)
if(1>=b<=3);
现在也是如此。请按照上述每个步骤来解决此问题。
第四个错误
你有int main(void)
。因此,需要在return 0
main
答案 1 :(得分:1)
同样定义变量但不声明它们是一个坏习惯。
int a, b;
不会为其分配任何值,也无法确定它们将包含哪些内容。更好的是
int a = 1;
int b = 1;
答案 2 :(得分:0)
这里有很多的问题。首先,这并不代表您认为的含义:
1<=a<=3
相反,你需要
1 <=a && a <= 3
另外,请勿使用分号跟if
语句:
if(1<=a<=3);
^
最重要的是,您需要在之前执行scanf()
,检查该值是否有效。
答案 3 :(得分:0)
而不是if(1<=a<=3);
写if(a>= 1 && a <= 3)
同等if(1>=b<=3);
写if(b>=1 && b<=3)
并且没有分号。只需检查该编程语言中的else语法。知道它是非常基础的。
答案 4 :(得分:0)
这不是编程中的测量范围。如果你想测量
您必须使用AND
运算符。
喜欢
if(a>=1 && a<=3) {
}
但这不适用于此。 a
和b
没有作业。您必须为a和b分配一些值。首先阅读一些基本教程,if
和loop
如何在C中工作。然后这将很容易。 :)