回覆列表
  • 1 # 下雨的熱天

    這個超大數不是10的100次方個數,而是一個數,只不過有100位,那麼我們會用一個整型的資料儲存,但沒有相應的整型型別能存放這麼大的數。 問題是: -如果你想保留這個數,那麼用一個字串陣列來儲存每一位上的數字是可以的。 -你想計算是否能被3整除,那麼你可以利用一個數學定理來完成這個計算,無需大記憶體,只要一小段程式即可,即:一個數能被3整除,那麼這個數的每位上的數字的和能被3整除,比如12的兩位數字之和是3,3能被3整除,那麼12也能,21一樣也能210,21000,同理都可以。那麼你的計算就無需等待這個數都輸入後再開始,而可以從每一位剛輸入時就可以了。見下面程式:int n,b,c=0,j; char a[101];scanf("%d",&n);for ( j=0;j<n;j++ ){ do { b=getchar(); } while ( !(b>="0" && b<="9") ); //保證輸入一位數字,輸入整個大數後回車即可 a[j]=(b-"0"); c+=a[j]; //將輸入的字元轉換成數字,加到累加和上}if ( c%3 ) printf("No\n"); else printf("Yes\n");

  • 中秋節和大豐收的關聯?
  • 什麼是生態板?