我想编写一段代码,在其中我想知道从一个点移动到另一个点需要多少时间。
输入
1) 第一行(输入)显示到达所需的最长时间
2) 第二行(第二个和第三个输入)显示初始位置。
3)第三行(第四和第五输入)显示最终位置。
4)第四行显示左、右、上、下走一步所需的时间。
输出一个整数表示需要到达的时间,如果不能及时到达则输出一个字符串Valar Codulis。在换行符上输出每个测试用例的答案。
但是我的程序不是这样运行的。为什么?
#include<stdio.h>
#include<stdlib.h>
int main()
{
int c, d, e, f, b;
scanf("%d", &b);
printf("\n");
scanf("%d", &c);
scanf("%d", &d);
printf("\n");
scanf("%d", &e);
scanf("%d", &f);
printf("\n");
int g, h, i, j;
scanf("%d", &g);
scanf("%d", &h);
scanf("%d", &i);
scanf("%d", &j);
int k, l, m, n, o;
e - c == k;
f - d == l;
if (e - c >= 0, f - d >= 0)
{
m = k*h;
n = l*i;
}
else if (e - c <= 0, f - d >= 0)
{
m = k*g;
n = l*i;
}
else if (k >= 0, l <= 0)
{
m = k*h;
n = l*j;
}
else
{
m = k*g;
n = l*j;
}
o = m + n;
if (b >= o)
{
printf("\n %d", o);
}
else
{
printf("Valar Codulis");
}
}
注意:我是初学者。
最佳答案
e - c == k;
这行代码没有任何作用。它检查e - c
的值是否等于k
的值,但不对检查结果执行任何操作。
如果您想为k
分配一个值,请使用k = e - c
。同样,l = f - d。
if (e - c >= 0, f - d >= 0)
应为 if (e - c >= 0 && f - d >= 0)
。 if
语句的多个条件不能使用逗号连接。逻辑运算符 &&
表示 'and'。
关于c - C 中的图形程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46129661/