#include <stdio.h>
int intVal(int x)
{
if(x < '0' || x > '9'){
return 0;
}
else{
x = x - '0';
return x;
}
}
int main(void)
{
int c, num, prev;
while((c = getchar()) != EOF){
num = (intVal(prev) * 10) + intVal(c);
prev = num;
printf("%d", num);
}
return 0;
}
このプログラムでやりたいことは、任意の数値を入力して一度に文字を読み取ってから、それを使用できるように int にフォーマットすることです (printf フォーマットを使用したくない) また、私はこの割り当てには getchar と printf を使用できます。
サンプル入力: 0001234.5
edit望ましい出力: <1234>(5) 実際の出力: 0001234050
ひらめきの先端にいるような気がしますが、障害物にぶつかりました。助けてください。
*編集 目的の END 結果は、非 10 進数を <1234> で囲み、10 進数を角かっこ (5) で囲むことです。