2013-03-19 83 views
4

我已經試過altready:避免科學記數法用Matlab

format long g; 

但這樣的數字表示用科學記數法:

ans = 8.80173259769825e-05 

如何避免科學記數法無需使用類似fprintf

+0

對於這樣的小數字,我認爲你不能。使用'fprintf'有什麼問題? – 2013-03-19 23:52:18

+0

這是蠻力... – dynamic 2013-03-20 00:17:29

+3

你總是可以定義類似於'mydisp = @(x)fprintf('%8f',x)'',然後調用'mydisp(num)'而沒有太多的麻煩。 – 2013-03-20 01:27:07

回答

5

你可以使用:

sprintf('%.10f', yourNumber) 

或者更復雜的選擇是使用基於Java的格式(see more info,信貸亞伊爾奧特曼用於顯示此方法),例如:

char(java.text.DecimalFormat('#.00000000').format(yourNumber)); 
0

轉到: 首選項>命令視圖>數字格式>銀行

+0

這不是答案類型,或者將其置於註釋中,或者在答案中提供詳細信息。 – iYoung 2016-12-30 14:15:43

+0

我不明白爲什麼這個答案是downvoted。在到處搜索而沒有找到答案之後,終於解決了我的問題。 – Nav 2017-08-31 10:11:20