「アルゴリズムの注意事項」のセクション3.5 - アナログスタート - >進変換
Cのタイトル
ディバイダの短い逆出力された後、このプロセスは、手動で爆発範囲をLONGLONG、文字列を使用する必要があり、その後、アナログ除算され
機能でANSが外部で定義され、内部空でありません
0が直接返されると、それは条件が0の唯一の前面が含まれていないことを認識する必要があると判定され、後者は通常、結果に含まれています
書式#include < 文字列の.h> の#include <stdio.hに> int型 ANS [ 1000年]。 int型 countnum = 0 ; int型 changenum(チャーC) { 戻り C- ' 0 ' 。 } チャー changechar(int型NUM) { 戻り NUM + ' 0 ' 。 } ボイド changetwo(チャープレ[]) { int型 LEN = STRLEN(PRE)。 // printfの( "LEN:%dは\ nを"、LEN); もし(LEN == 0)を返します。 チャーシャン[ 1000年]。 // のmemset(ANS、0、はsizeof(ANS))。 memset(シャン、0、はsizeof (シャン))。 // int型のTEMP = changenum(PRE [0])* 10。 int型のカウント= 0 ; int型の温度= 0 ; 以下のために(int型 i = 0 ; I <= len- 1 ; I ++ ) { // (:、I "%のD I =");のprintf TEMP = TEMP + changenum(予備[I])。 // printfの( "TEMP:%dは\ nを"、温度); 場合(TEMP / 2!= 0は!数え|| = 0)シャン= changechar [++カウント]を(TEMP / 2 ); TEMP =一時%2 。 温度 =温度* 10 。 // printfの( "cichu:%dは\ nを"、温度); } // のprintf( "ANS:%Dを\ n"、TEMP / 10)。 // printfの( "ヘクタール\ N"); ANS [countnum ++] = TEMP / 10 。 changetwo(シャン)。 } int型のmain() { char型プリ[ 100 ]。 しばらく(scanf関数(" %sの"!、PRE)= EOF) { memsetの(ANS、0、はsizeof (ANS))。 countnum = 0 ; changetwo(PRE)。 getchar関数(); 以下のために(int型 I = countnum- 1 ; I> = 0 ; i-- ) のprintf(" %dの" 、ANS [I])。 printf(" \ nを" ); } 戻り 0 。 }