Программа C - значения не добавляются к вектору в цикле - PullRequest
0 голосов
/ 25 января 2019

Сначала я извиняюсь, что этот вопрос может быть глупым.Я создал вектор и попытался добавить новые элементы в этот вектор в цикле.Но кажется, что цикл останавливается на первом шаге.Заранее спасибо за помощь.

int n, NT=97;

double *x=malloc(NT*sizeof(double));

x[0]=0;
double dt=30;   
double utem=0.5, dx;

for (n=1;n<NT;n++)

    dx=dt*utem;
    x[n] = x[n-1] + dx;
    printf("x is %6.13f \n", (double)x[n]);   

Вот результат: х равен 15,0.Цикл останавливается на первом шаге.

1 Ответ

0 голосов
/ 25 января 2019

Вы должны включить вашу петлю в скобках:

int n, NT=97;

double *x=malloc(NT*sizeof(double));

x[0]=0;
double dt=30;   
double utem=0.5, dx;

for (n=1;n<NT;n++)
{
    dx=dt*utem;
    x[n] = x[n-1] + dx;
}

printf("x is %6.13f \n", (double)x[n]);   
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...