我有这段代码
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
double log2x;
double logx;
int main()
{
std::cout << std::setprecision(6) << std::fixed;
int lines;
cout << "How many lines would you like to calculate? " << endl;
cin >> lines;
cout << "x " << " log10x " << " log2x " << "logx " << endl;
cout << "-------------------------------------------------------" << endl;
int stepcount = 1;
int exponentstep = 0;
int logvariable;
for (int i = 0 ; i < lines; i++)
{
logvariable = stepcount * pow(10,exponentstep);
log10x = log10(logvariable);
log2x = log2(logvariable);
logx = log(logvariable);
stepcount++;
while (stepcount == 10)
{
stepcount = 1;
exponentstep++;
}
cout << left << setw(10) << logvariable << left << " " << setw(10) << log10x << " " << setw(10) << log2x << " " << setw(10) << logx << endl;
}
return 0;
}
它输出值为1-9 * 10 ^ n的自然对数函数,所以 1 2 3 4 5 6 7 8 9 10 20 30 40 50 60 70 80 90 100 200等我完全相信我的工作能力,但是我的代码块会给出10个正确的答案,然后是10个正确的答案。我试过cpp.sh,它工作得很漂亮。不确定为什么呢?我根本无法在视觉工作室中编译它,我没有得到足够有用的错误消息来弄明白。是什么原因导致代码块会弄乱代码似乎正在起作用?非常感谢。
答案 0 :(得分:0)
double log2x;
double logx;
//You forgot to declare log10x
double log10x;
您应该将代码复制到文本文档中并创建新项目。创建新项目后,转到“查看”然后管理员或转移+ f2,您应该看到您的项目。确保main.cpp位于项目下的“Sources”中并粘贴代码,保存并编译。
一切都为我工作,一旦我宣布了log10x,它看起来就像是正确的答案所以尝试创建一个新项目,如果这没有帮助我相信你创建的codeBlock项目不正确,我可以引导你完成它,它非常简单。