-1
桁数を計算するとき、コンパイラは0000を1つの0として扱い、答えは1です。ただし、各場所のゼロ数を計算する必要があります。例えば:0000から4 00から2入力が0000の場合の整数の桁数の検索方法は? (出力は4でなく1でなければなりません)
int n,c=0;
scanf("%d",&n);
do{
n=n/10;
c++;
}while(n!=0);
printf("%d",c);
文字列として読み込みます。 – TZHX
入力を文字列としてスキャンし、数字であるかどうかを確認して桁数を計算する – kuro
上記のコメントよりも深く進むには、「0000」と「0」を区別する必要がある場合は、整数に関するより長い話(これらは同じ整数値なので)。表現を区別するために、表現を保持する必要があります - 最も簡単な方法は文字列を保存することです。 –