Суммируйте первые n чисел (от 1 до n), используя циклы в C

#c #loops #runtime-error

#c #циклы #ошибка во время выполнения

Вопрос:

Я хочу создать алгоритм, который позволяет суммировать первые n чисел (от 1 до n), как только пользователю будет предложено ввести n с клавиатуры.

 #include <stdio.h>

int main() {
    
    int x,k,j;
    
scanf("%d",amp;x);
    
    int y= 1;
    
do {
    
    int k= y;
    
    int y= y 1;
    
    int j= k y;
    
}   while(y<x);


printf("The Total sum of the number is: %d ", j);
    

}
 

Я написал это, но это дает мне эту ошибку:

 [Error] ld returned 1 exit status
 

Ответ №1:

Вы уже инициализировали y, j и k . Существует более простой способ подсчета суммы от 1 до n.

 scanf("%d", amp;n);
int sum=0;
for(int i=1; i<=n; i  ){
    sum=sum i;
}
 

Ответ №2:

1. Переменные не инициализируются.

2. Повторно создавайте переменные слишком много раз, что приводит к отсутствию сохраненных значений.

3. Трудно читать.

Попробуйте это:

 #include <stdio.h>

int main() {
    int end = 0, sum = 0;
    scanf("%d",amp;end);
    int i = 1;
    do {
        sum = sum   i;
        i= i 1;
    } while(i<=end);

  printf("The Total sum of the number is: %d ", sum);
}