輸出連續的整數序列2(考慮當P或Q是int型別能表示的最大值或最小值時)
阿新 • • 發佈:2018-12-02
輸出連續的整數序列2(考慮當P或Q是int型別能表示的最大值或最小值時)
#include<stdio.h> int main() { int n,p,q,i,j,t; scanf("%d",&n); for(i=1;i<=n;i++) { scanf("%d%d",&p,&q); if(p==q) printf("%d\n",p); else { if(p>q) { t=p; p=q; q=t; } for(j=p;j<q;j++) { printf("%d ",j); } printf("%d\n",q);//單獨處理最後一個數據。 } printf("\n"); } return 0; }
如果先處理第一個資料,則for(j=p;j<=q;j++)加到2147483647時,j<=2147483647,還可以再迴圈一遍,完了以後變成2147483648資料溢位,造成死迴圈。所以要處理最後一個數據。