回答編集履歴

1 ソースコード修正

tkturbo

tkturbo score 5166

2018/06/06 14:14  投稿

[Decimal](https://docs.microsoft.com/ja-jp/dotnet/api/system.decimal?view=netframework-4.7.2)使っちゃまずいのかな?
```
var value = txtBox.Text;
decimal d0, d1, d2;
d0 = Decimal.Parse(value);
d1 = Decimal.Round(d0);   // 整数化
d2 = Decimal.Round(d0, 1); // 小数第1位までの小数化
if (d1.ToString().Equals(d2.ToString()) {
 d0 = d1; // 入力が整数だった場合、d1,d2の文字列表現は同じ。
} else {
 d0 = d2;
}
txtBox.Text = Decimal.ToString(d0);
// txtBox.Text = Decimal.ToString(d0); // ←誤
txtBox.Text = d0.ToString();         // ←正
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る