i****1 发帖数: 445 | 1 #include
void f(int n)
{
if (n)
{
int labs, research;
research = n - 1;
if (research > 15) labs = 3;
else labs = 0;
if(labs) labs *= 100;
if (labs) printf("%d - 1 > 15\n", n);
}
}
int main(void)
{
f(13);
return 0;
}
代码大致是这样的,可能中间某个地方有点儿不同。题目问,这个程序为何会输出“13
- 1 > 15”这样的东西。请问一下,这可能吗?我举得题目出错了。 |
q*******z 发帖数: 62 | |
p*****2 发帖数: 21240 | |
a***o 发帖数: 17 | 4 I compiled and ran this. It does not print anything. |
y*******o 发帖数: 6632 | 5 if (research > 15) labs = 3;
: else labs = 0;
research =12;
then labs=0;
so it will not print anything because if(0) ==if(false)
【在 i****1 的大作中提到】 : #include : void f(int n) : { : if (n) : { : int labs, research; : research = n - 1; : if (research > 15) labs = 3; : else labs = 0; : if(labs) labs *= 100;
|
k**********g 发帖数: 989 | 6 Maybe you didn't remember it exactly.
The original question probably involved a mismatched if-else. |