我正在寻找使这更高效。执行这个简单的程序需要很长时间。我的C解决方案的多重性问题太慢了,需要建议
有什么建议可以让它运行得更快?我不确定我做错了什么让这么慢。
仅供参考这只是一个实践问题,对我的编码技能的工作..帮助表示赞赏。这是写在C.
问题: 计算其是小于1000
#include <stdio.h>
int sumOfFivesAndThrees(int start, int limit){
int sum = start;
int idx = 0;
printf("Your input is: %i\n", start);
while(idx <= limit) {
if(! idx % 3){
sum = sum + idx;
printf("IDX(3): %i\n", idx);
}
else if(! idx % 5){
sum = sum + idx;
printf("IDX(5): %i\n", idx);
}
idx++;
}
return sum;
}
int main()
{
int answer = 0;
answer = sumOfFivesAndThrees(answer, 1000);
printf("Your of 3's and 5's is: %i\n", answer);
return 0;
}
[你可能要问上CodeReview改为](http://codereview.stackexchange.com/) – Draken
'printf'语句将大大减缓它的速度。 – Galik
不知道你想要解决的问题实际上*并没有多大帮助。目前还不清楚你知道表达式'!idx%n'实际上*做了什么*(与'!(idx%n)'相反)。逻辑 - 不是一个只会是0的计数器(因此表达式“true”*一次*),然后采用模“3”似乎很奇怪。 – WhozCraig