检查循环

Mus*_*sif -5 c++ loops for-loop

#include <stdio.h>
#include <conio.h>
void main()
{
    clrscr();
    int lop, squr;
    for (lop=1; lop<=20; lop=lop+1);
    {
        squr = lop*lop;
        printf("%5d,%5d,\n",lop,squr);
    }
    getch();
}
Run Code Online (Sandbox Code Playgroud)

我的朋友说的是这个源代码运行良好..但它在我身边运行不佳.我应该怎么做才能在C++中很好地工作.

我的朋友告诉我,上面提到的代码在他正在使用的版本中运行良好.我说,这段代码不正确,会给出执行错误....上面提到的代码对于任何标准或版本的C/C++都是正确的.

并告诉我有多少版本的C++可用...

问候

qua*_*tum 6

for (lop=1; lop<=20; lop=lop+1);是问题.更改为for (lop=1; lop<=20; lop=lop+1)(删除分号将使此工作).

这是您的代码,问题已修复并优化:

#include <stdio.h>
#include <conio.h> // Remove if you want

int main() {
    clrscr(); // Remove if you want
    int lop, squr;
    for (lop=1; lop<=20; ++lop) {
        squr = lop*lop;
        printf("%5d,%5d,\n", lop, squr);
    }
    getch(); // Remove if you want
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

用线// Remove if you want可以被删除,但会改变行为.请参阅@ VinayakGarg的评论.

  • void main仍然不是标准的C或C++ (5认同)
  • 好眼睛:)哈哈 (2认同)

Vin*_*arg 6

应该是这样的 -

#include <stdio.h>

int main()
{
    int lop, squr;
    for (lop = 1; lop <= 20; lop++)
    {
        squr = lop*lop;
        printf("%5d,%5d,\n", lop, squr);
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

conio.h因此clrscr()并且getch()不属于标准,您不应在代码中使用它们.

编辑-

并告诉我有多少版本的C++可用...

C++没有完全版本,有标准

Year    C++ Standard                    Informal name
2011    ISO/IEC 14882:2011              C++11
2007    ISO/IEC TR 19768:2007           C++TR1
2003    ISO/IEC 14882:2003              C++03
1998    ISO/IEC 14882:1998              C++98
Run Code Online (Sandbox Code Playgroud)

但是有一些C++编译器的版本,比如gcc 4.7.2等.

  • 我希望,恐龙IDE可以从学校和大学的旧机器中删除. (2认同)