Closed. This question is off-topic。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                        
                        2年前关闭。
                                                                                            
                
        
我正在尝试使用int函数计算表中元素的总和。这是我的代码

#include <iostream>
#include <cstdlib>
#include <ctime>

void wylosujLiczby ( int tablica[], int iRozmiar, int pocz, int kon )
{
    int i = 0;
    do
    {
        srand( time ( NULL ) );
        tablica [ i ] = ( ( std::rand() % ( kon - pocz ) ) + pocz );
        i++;
    } while ( i < iRozmiar );
}

void wypiszLiczby ( int tablica[], int iRozmiar )
{
    int i = 0;
    do
    {
        std::cout << "Liczba nr " << i << ": " << tablica [ i ] << std::endl;
        i++;
    } while ( i < iRozmiar );
}

int obliczSume ( int tablica[], int iRozmiar )
{
    int i, suma = 0;
    do
    {
        suma += tablica[ i ];
        i++;
    } while ( i < iRozmiar );

    return suma;
}

int main()
{
    int tablica[ 999 ];
    wylosujLiczby( tablica, 999, 4, 10 );
    wypiszLiczby( tablica, 999 );
    int iSuma = obliczSume( tablica, 999 );
    std::cout << "Suma liczb wynosi: " << iSuma << std::endl;
    std::cout << tablica[ 991 ];
    return 0;
}


使用代码块,它可以正确编译,但是在打印所有值后应用程序崩溃。我犯了什么错误?

最佳答案

问题在这里:

int i, suma = 0;


您还需要设置i = 0:

int i = 0, suma = 0;

07-24 09:45
查看更多