天天看點

java int long越界問題_輸出越界問題 和 long long 的兩數加法問題

注意方面一  測試 邊界的數值  考慮會不會越界~~~

注意方面二   在使用時注意這一點 如下文 直接相加 和指派後相加不一樣 //pay more attention

代碼:

#include

long long a[44];

long long b[44];

long long sum;

int main()

{

int i,n;

a[1]=2;b[1]=1;

for(i=2;i<=40;i++)

{

a[i]=2*(a[i-1]+b[i-1]);

b[i]=a[i-1] ;

}

while(scanf("%d",&n)!=EOF)

{

sum=a[n]+b[n];                                                  //注意這裡的使用

printf("%I64d\n",sum);                                         //不能直接替換成 a[n]+b[n] 不在long long範圍之内

}

}