【发布时间】:2011-03-14 23:36:30
【问题描述】:
我刚开始使用 C,想尝试一个欧拉问题。
对于欧拉 #2
#include <stdio.h>
int main(){
int sum;
int prev = 0;
int curr = 1;
int next;
do{
if(curr % 2 == 0 ){
sum = sum + curr;
}
next = curr + prev;
prev = curr;
curr = next;
} while (curr <= 4000000);
printf("%d\n", sum);
return 0;
}
当我编译并运行这个程序时,我得到一个完全不同的数字。我现在不在乎我没有得到正确的答案,因为我得到的数字有时会变化 1,000,000。
我能想到的唯一两件事是,在 vm 中运行 linux 会让人发疯,或者 gcc 会搞砸。
g++ euler2.c -o euler2 对编译 c 是否正确?是的 euler2.c 是我的文件名。
已解决:感谢您的回复。绝对有很多有用的,非常快速的信息。是的,我应该添加“我可能搞砸了”的可能性 =)
【问题讨论】:
-
你忘记了“不知何故我搞砸了”的可能性:)
标签: c gcc compiler-construction