c言語で関数を用いて指定された個数だけ整数を読み込んで、それらの合計を計算し表示するプログラムを作成せしてるのですが、実行しようとすると、segmentation fault: 11 と表示されてしまいます。理由を教えて下さい!
#include <stdio.h>
/* 合計の計算:要素数numberの配列valuesの,各要素の合計を計算し返却値として返す */
int sum ( const int values[], int number)
{
int i;
int total = 0;
for ( i = 0; i < number; number++ )
total += values[i]; /* 合計を計算*/
return total; /合計を返す/
}
int main(void)
{
int j, n, SUM;
int values[j];
printf("整数:"); /*何個の整数を足し合わせるか*/ scanf("%d", &n); for (j = 1; j <= n; j++){ scanf("%d", & values[j]); /*n個の整数がそれぞれ何か*/ } SUM = sum(values, n); /*sum関数で得た答え= SUM */ printf("合計:%d\n", SUM); return 0; }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。