2012-10-11 33 views
-1

有人可以帮我解决这个问题。我几乎在那里,我只需要一点点推动。我应该让输出数从99减少到3(我正确地解决了这个问题),但是如果遇到一个可被5整除的数字,我还需要输出打印“找到一个”!我需要帮助。继承人到目前为止我所拥有的。请注意,即使我拥有解决股息的正确功能,代码也不会打印“找到一个”。如何在c编程中完成倒计时挑战

#include <objc/objc.h> 
#include <stdio.h> 

int main(int argc, const char * argv[]) 
{ 
    int i = 99; 
    while (i > -1) { 
     printf("%d\n", i); 
     i = i-3; 
    } 
{ 
if (i%5==0) printf("found one\n"); 
} 
    return 0; 
} 
+0

您应该先学习该语言的基本语法,然后再提问,而不是输入乱码,然后将其张贴到SO。 –

+0

看,我知道语言的基本语法...顺便说一句,对不起呼喊(我没有意识到我的CAPS键已打开 – user1706978

+0

@PaulTomblin:这不是乱码,而是一个有效的新手问题。家庭作业标签已经不存在了,当我们有了这个标签时,如果你不想花时间帮助新手,那么你可能不会阅读带有该标签的问题 –

回答

2

您正在寻找模运算

if (i % 5 == 0) // The number is divisible by 5 

模运算符计算余数。如果余数为零,则整数数字可以被模运算数整除,在这种情况下为5.

+0

非常感谢你 – user1706978

+0

感谢提醒我...因为你看起来像一个不嘲笑那些相对较新的语言的人,生病的时候再问你一件事。我将它插入到我的代码中,但是现在,代码现在发现5的红利时,并没有说“找到一个”。 – user1706978

+0

因为你没有'if(i%5 == 0)printf(“found one \ n”);'你的* while *循环内部,你的新代码将只测试* final * 。 –

1

我给你一个提示。模数(%)运算符返回整数除法后的余数。所以11%10 = 1和15%5 = 0。给定你的代码,你应该能够从那里去!

+0

非常感谢你 – user1706978

0

改为使用if(i%5 == 0)。这将检查它是否被5除 - 没有余数。

+0

非常感谢你 – user1706978