プロジェクトeulerでCを使用して問題を解決しようとしていましたここをクリック ここ にコードがあります。値が 10 個の場合は正常に機能しますが、値が 1000 個の場合は間違った出力が得られます。32までは正しい出力が得られることに気付きました。メモリか何かを超えていると思います。このような大きな配列にメモリを割り当てるにはどうすればよいですか?
#include <stdio.h>
int main() {
int a[10], i, sum=1, b=0;
for(i = 1; i < 10; i++) {
a[0] = 1;
a[i] = sum + a[i-1];
sum = sum + a[i-1];
}
for(int j = 1;j > 0; j++) {
b = b + sum%10;
if(sum<10)
break;
sum = sum/10;
}
printf("%d\n",b);
return 0;
}