用C

时间:2015-12-29 21:55:06

标签: c arrays

我已经阅读了这里已经提到的关于求和数组的问题的答案,但仍然看不出我错在哪里。我想总结一个数组。我写的代码给了我一个输出,只是不正确的!这是我的代码:

int main() {
    int x; 
    scanf("%d",&x);
    int array[x];
    int sum = 0; 
    for (int i = 0; i < x; i++) {
        scanf("%d", &array[i]);
    }
    for (int i = 0; i < x; i++) {
        sum += sum + array[i]; 
    }
    printf("%d\n", sum);
    return 0;
}

谁能看到我出错的地方?

由于

2 个答案:

答案 0 :(得分:1)

您应该写sum += array[i];sum = sum + array[i];。它的编写方式,你不计算值的总和(除了01值等微不足道的情况。)

答案 1 :(得分:0)

希望这有助于我通过评论解释各个步骤:

import java.util.Scanner;

class Draw {

   static void main(String[] args){

       Scanner userInput = new Scanner(System.in);
       int num_sides;

       //user input
       System.out.println("How many sides has the figure you want to draw?");   
       num_sides = userInput.nextInt();


       //---> deciding what constructor to call with if statements

       if(num_sides == 0){
          Figure f1 = new Circle();
       }
       else if(num_sides == 3){
          Figure f1 = new Triangle(); 
       }
       //...
       else{
          System.out.println("Error. Invalid sides number");
       }


   }
}