C++ .exe文件在我运行c++;程序(否';/0';)

C++ .exe文件在我运行c++;程序(否';/0';),c++,C++,当我运行此程序时(我使用的是codeblock及其完全升级版),它会显示一个框,其中包含: ''。exe已停止工作 一个问题导致程序停止正常工作。Windows将关闭该程序并通知解决方案是否可用。“” #包括 #包括 #包括 使用名称空间std; int main() { 国际编码,hlf,arr[no],arrno; 不能>否; hlf=ceil(no/2); 对于(inti=1;i,代码中几乎没有错误 不需要#包括和getch(); 数组arr[no]声明错误。它应该是int-arr[50]

当我运行此程序时(我使用的是codeblock及其完全升级版),它会显示一个框,其中包含: ''。exe已停止工作 一个问题导致程序停止正常工作。Windows将关闭该程序并通知解决方案是否可用。“”

#包括
#包括
#包括
使用名称空间std;
int main()
{
国际编码,hlf,arr[no],arrno;
不能>否;
hlf=ceil(no/2);

对于(inti=1;i,代码中几乎没有错误

  • 不需要
    #包括
    getch();

  • 数组
    arr[no]
    声明错误。它应该是
    int-arr[50];

  • 下面是运行良好的更正代码

    #include <iostream>
    #include <math.h>
    
    using namespace std;
    
    int main()
    {
    
        int no, hlf, arrno;
        int arr[50];
    
    
        cout << "ENTER A NUMBER";
    
        cin >> no;
    
        hlf = ceil(no/2);
    
    
    
        for(int i = 1;i <= no;i++)
        {
            for(int j = 2;j <= hlf;j++)
            {
                int ij = i/j;
                if(j != i && ij == 0)
                {
                    goto cont;
                }
                else
                {
                    continue;
                }
            }
            arr[arrno] = i;
            arrno++;
            cont: ;
        }
    
        for(int k = 0;k <= arrno;k++)
        {
            cout << arr[k] << "  ";
        }
    
    
        return 0;
    }
    
    #包括
    #包括
    使用名称空间std;
    int main()
    {
    内部编号、hlf、arrno;
    int-arr[50];
    不能>否;
    hlf=ceil(no/2);
    
    对于(int i=1;i谢谢大家,我得到了答案。这是我的错,我没有发布我需要打印素数的帖子。这是我在网络论坛上的第一个问题。从未使用过。 再次感谢

    包括 包括 使用名称空间std

    int main() {

    int numb=12,一半;
    int arra[50],arrno=0;
    一半=细胞(麻木/2);
    
    对于(int r=2;r这意味着你的程序崩溃了。你应该使用调试器找出哪里并帮助你找出原因。也许你也应该阅读Eric Lippert的文章。我建议你写下所有变量及其值,然后遍历代码,在值发生变化时更新它们。你会很快发现代码中的问题。作为提示尽管如此:在没有循环的情况下,程序的执行是从上到下的。您的程序不会返回并执行诸如追溯性地重新定义变量之类的操作。请考虑这意味着在初始化变量之前使用
    no
    时。此外,未初始化的局部变量实际上是未初始化的。它们的值将是不确定的。现在考虑一下,在初始化之前使用“代码> ARNONO <代码>。实际上,使用C++中未初始化的变量实际上会导致!而且,你似乎忘记了数组索引从零开始。最后,C++没有。看起来你需要两个。这里是截图,程序运行得很好,但是我没有检查。你的逻辑是什么
    #include <iostream>
    #include <math.h>
    
    using namespace std;
    
    int main()
    {
    
        int no, hlf, arrno;
        int arr[50];
    
    
        cout << "ENTER A NUMBER";
    
        cin >> no;
    
        hlf = ceil(no/2);
    
    
    
        for(int i = 1;i <= no;i++)
        {
            for(int j = 2;j <= hlf;j++)
            {
                int ij = i/j;
                if(j != i && ij == 0)
                {
                    goto cont;
                }
                else
                {
                    continue;
                }
            }
            arr[arrno] = i;
            arrno++;
            cont: ;
        }
    
        for(int k = 0;k <= arrno;k++)
        {
            cout << arr[k] << "  ";
        }
    
    
        return 0;
    }
    
    int numb = 12, half;
    
    int arra[50], arrno = 0;
    
    half = ceil(numb/2);
    
    for(int r = 2;r <= numb;r++)
    {
        for(int t = 2;t <= half;t++)
        {
            if(r%t != 0 || t == r) continue;
            else goto rpp;
        }
        arra[arrno] = r;
        arrno++;
        continue;
        rpp:
            continue;
    }
    
    for (int v = 0;v < arrno;v++)
    {
        cout << arra[v] << "  ";
    }
    return 0;