我的程序出現了一個問題,它應該總計從1到70000(1 + 2 + 3 + 4 + ... + 69999 + 70000)的數字。我的程序可以將數字總和不超過65535,但是對於超過65535的總和,結果顯示負數,這是錯誤的。任何人都可以向我解釋爲什麼我的程序不能總和65535以上的數字嗎?C++數字總和
這是我的代碼:
#include <stdio.h>
void sum(int *s)
{
*s=0;
int i=1;
int n=70000;
while(i<=n)
{
*s+=i;
i++;
}
}
main()
{
int s;
sum(&s);
printf("Suma prirodnih brojeva od 1 do 70000 je: %d\n",s);
}
一旦工作。它值得在這裏要求代碼審查:codereview.stackexchange.com –