日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

求小数位数个数

發布時間:2023/12/15 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 求小数位数个数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

求小數位數個數

作者: XXX 時間限制: 10S 章節: 字符串

問題描述 :

明明最近在一家軟件公司實習,公司分配給他一個任務,要他寫一個小程序,這個程序的功能是求出一個浮點數的小數部分的長度。例如程序輸入1.1,則輸出1,程序輸入1.11,則輸出2,明明覺得這個非常簡單,花了不到5分鐘的時間就把程序給寫出來了,然后就把程序交給了測試員測試。但是沒有想到的是,經過測試員的測試,發現了一大堆的錯誤,返回的結果很多都是不對的,這個令明明相當的不解,始終想不通自己的程序錯在哪里。你是一名經驗豐富的程序員,明明把這個問題來求助于你,明明和你說了他的想法,你一聽就明白明明錯在了哪里,原來明明使用double型來存放浮點數,但是由于double型的精度問題,不可能把所有的小數都精確的保存好,如果小數位數很長,就會出錯。你發現了問題。現在請你寫出正確的程序。 明明的問題可以歸結為:給你一個浮點數,請你求出這個浮點數的小數位數。

輸入說明 :

你寫的程序要求從標準輸入設備中讀入測試數據作為你所寫程序的輸入數據。標準輸入設備中有多組測試數據,每組測試數據僅占一行,每行僅包括一個浮點數數n,n的長度不超過100。每組測試數據與其后一組測試數據之間沒有任何空行,第一組測試數據前面以及最后一組測試數據后面也都沒有任何空行。

輸出說明 :

對于每一組測試數據,你寫的程序要求計算出一組相應的運算結果,并將這一組運算結果作為你所寫程序的輸出數據依次寫入到標準輸出設備中。每組運算結果為一個整數,即n的小數部分的位數。每組運算結果單獨形成一行數據,其行首和行尾都沒有任何空格,每組運算結果與其后一組運算結果之間沒有任何空行,第一組運算結果前面以及最后一組運算結果后面也都沒有任何空行。 注:通常,顯示屏為標準輸出設備。

輸入范例 :

1.11
1.00000000000000001

輸出范例 :

2
17

#include <stdio.h> int main(){char n[100];int i=0,count=0;while(gets(n)){//接收輸入的字符while(n[i]!='.'){//遇到小數點停止i++;//統計小數點前的位數}i++;//從小數點后一位開始算while(n[i]!='\0'){//遇到回車停止統計位數count++;//計數i++;}printf("%d\n",count);i=0,count=0;}return 0; }

總結

以上是生活随笔為你收集整理的求小数位数个数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。