直接挿入ソート、シェルソート
大きな数字の階乗を求めて:
1000 2568 //階乗 する#include <stdio.hの> INT A [3000]; ボイド表示(int型K) { int型I = 0; のprintf( "%d個のビットは、ビット\ N-"、K) のための(I 1-K =; I> = 0; i--) { のprintf( "%のD"、A [I]); } } FANC(N-INT)INT { INT W = 0、 I 0 = INT、J = 0を; INT = N-T; INT K = 0;データのビット数//。 一方、(T) { A [I ++] = 10%T、 T / = 10; K ++; } ための(N-J- = 1、。。J> 1; J) { W = 0; //バイナリ表し ための式(I = 0; I <K; I ++) { T = A [i]はJ * + W。 [I] = T 10%。 = T / 10ワット。 } 一方(W) { [I ++] = 10%、W。 / = 10ワット。 K ++; } } Kを返します。 } int型のmain() { int型のn; INT K = 0。 scanf関数( "%のD"、&N); K = FANC(N)。 (k)を示す図です。 printf( "\ n"は); 0を返します。 }