1樓:t寒冬飛雪
編譯器問題
因為我是vs2012,所以沒有問題。
原因是編譯器在編譯的時候沒有連結浮點數相關的庫,可以在定義變數的時候初始化一下。
double a=0.0,......
像這樣,然後應該就ok了。
2樓:金色潛鳥
scanf("%lf %lf",&a,&b);
printf("%lf %lf",a,b);
注意程式格式書寫,必須用英文ascii 碼,例如 空格,也必須是西文空白(中文半形碼),不能是中文空白(全形碼)。
應可拍入 3 4,scanf 能轉為 double
3樓:龔煒林
你重新編譯一下或者新建一個工程試試。還有問題,那再次除錯:按下f10,再按下alt+8檢視反彙編,把反彙編貼上來看看。
4樓:
這個問題嘛,你這樣一試:把double a,b,s,h;中的a改成a=0.0,即寫成double a=0.0,b,s,h;。
5樓:匿名使用者
scanf不能將整形處理為浮點型別,這個是scanf函式的bug,所以需要輸入的時候需要是浮點型數。比如 3.0 4.0
6樓:id雞蛋炒韭菜
輸入時候寫成3.0 4.0試試
7樓:
有可能是把你的換行也作為第二個數讀進來了,你可以在讀取的時候加入換行試下。
8樓:小憶小破孩
可能函式庫錯了吧 呵呵
c語言 scanf()函式中使用%lf的問題
9樓:gta小雞
輸入e導致scanf讀取失敗,此時x的值是未定義的。
由於scanf讀入失敗,未能成功讀取的字元e被留在輸入緩衝區中;下次迴圈時,scanf又嘗試讀取輸入緩衝區中的e,自然再次讀取失敗,因而陷入無限迴圈。
10樓:反翽葚讛笀仕藖
不一樣的,這麼都是格式字元,意義如下:格式字元 意 義 d 以十進位制形式輸出帶符號整數(正數不輸出符號) o 以八進位制形式輸出無符號整數(不輸出字首0) x,x 以十六進位制形式輸出無符號整數(不輸出字首ox) u 以十進位制形式輸出無符號整數 f 以小數形式輸出單、雙精度實數 e,e 以指數形式輸出單、雙精度實數 g,g 以%f或%e中較短的輸出寬度輸出單、雙精度實數 c 輸出單個字元 s 輸出字串前面加個%,你自己對照下吧 長度:長度格式符為h,l兩種,h表示按短整型量輸出,l表示按長整型量輸出。
你這個「%lf」,是在定義輸入的型別為double(雙精度)是用的,不明白,你可以測試下: #include void main() 和 #include void main() 我這裡用了2個編譯器分別測試了下,一個如果定義double行,輸入的時候必須要用%lf,一個就不用了,用%f也行,但是精度還是有區別的,綜合以上,如果定義double型資料,輸入最好是用"%lf" .
scanf("%lf",&a) 中的%lf是什麼意思?
11樓:匿名使用者
雙精度浮點型資料的輸入格式控制符。
因為計算機中所有的資料都是二進位制 0、1 **,所以輸出的時候要用「輸出控制符」告訴計算機以什麼形式將二進位制資料顯示出來。
輸出控制符中,%d、%f、%s、%c 是最常用的,它們分別是輸出整數、實數、字串和字元的控制符。%.mf 雖然用得不多,但一定要重視。
12樓:文件類共創空間
這些都是格式控制符,%lf代表長浮點型 。
類似於此類的格式控制符有:
%d 十進位制整型
%ld 十進位制長整型
%s 字串
%c 字元
%f 浮點型
%ox %o 等等..
13樓:匿名使用者
準確地說是雙精度浮點型資料(也就是double)的輸入格式控制符,
14樓:匿名使用者
輸入格式控制符,%lf表述輸入的是浮點型數
15樓:戚綺玉
輸出格式,是長浮點型的 如%d是整型 %c是字元型
16樓:別琬凝
等等熱熱熱熱熱若若若若若若若若
c語言中printf輸出float和double都用%f麼(scanf又如何)
17樓:匿名使用者
答:1.c語言中printf輸出float和double都可以用%f,而double型資料還可以用%lf。
2.scanf當中若是對雙精度的變數賦值是必須是%後跟lf,而printf當中可以用%f也可以用%lf沒有限制。
拓展資料:c語言中的格式控制符:
%d十進位制有符號整數
%u十進位制無符號整數
%f浮點數
%s字串
%c單個字元
%p指標的值
%e指數形式的浮點數
%x,%x無符號以十六進位制表示的整數
%0無符號以八進位制表示的整數
%g自動選擇合適的表示法
18樓:匿名使用者
1、printf輸出float和double都可以用%f,同時double還可以用%lf。
2、scanf輸出float用%f,而double輸出用%lf,不能混用。
拓展資料:
c語言程式設計軟體是一款使用**c語言進行程式設計的軟體,c語言簡潔、高效、靈活的特性令其具有獨特魅力。現在的程式編寫朝著越來越冗長龐大的方向發展,而c語言雖然屬於相對'低階'的程式語言,但它的簡潔之美是無可替代的。
19樓:c語言基礎
c語言基礎學習,c語言基礎互動之printf函式和scanf函式
20樓:匿名使用者
double用%lf.scanf和printf一樣
21樓:光滑夜空的魅惑
printf輸出double不可用%lf,否則只能得出float的結果
22樓:鐳毅
printf("float %f, double %lf", f,d);
scanf也一樣。
c語言中是什麼意思?
23樓:於陵星
end of file,在電腦的術語bai縮寫通常為du eof,在作業系統zhi決定資料源dao無更多的資料可內
讀取。資料源通常稱為檔案或串
容流。在 c語言,或更精確地說成 c標準函式庫,檔案存取或其它 i/o 功能可能傳回等於象徵符號值 (巨集) eof 指示檔案結束的情形發生。實際上 eof 的值通常為 -1,但它依系統有所不同。
巨集 eof 會在編譯原始碼前實際值給前處理器。
參考資料
24樓:天雲一號
表示
如果dun和m都被成功
zhi讀dao入,那麼scanf的返版回值就是2,繼權續執行迴圈
如果只有n或m被成功讀入,返回值為1,繼續執行迴圈如果n和m都未被成功讀入,返回值為0,繼續執行迴圈如果遇到錯誤或遇到end of file,返回值為eof,條件不成立,退出迴圈。
25樓:匿名使用者
重複做輸入兩個浮點數,直到你按ctrl+z才結束。
26樓:燼
一直獲取n和m的值,知道輸入crtl+z為止
27樓:oo沒有蠟
輸入n,m,沒出錯的話就繼續迴圈
c語言中scanf是什麼意思,為什麼有時候後面寫%f,有時候寫%e,%lf,%c等等
28樓:彡黑彡龍彡
scanf是c語言中的一個輸入函式,意思就是當你從鍵盤中輸入數值按回車後,他會把你輸入的數值儲存到電腦,至於為什麼後面會寫%f,%e.%lf,%c那是根據scanf的物件而定的。向float,double,char就分別用%f,%e,%c
29樓:花開蝴蝶醉
scanf就是格式輸入函式。%是格式說明符,後面的字母是格式字元,scanf函式的格式是是取地址符號,這個函式的意思就是從螢幕上輸入兩個整數,分別存入a,b當然之前肯定要定義一個整形變數:
int a,b;然後在使用scanf函式。。。。簡單的說%f就是說格式是小數,%e與%f差不多,%lf是長整形雙精度,%c就是字元
30樓:十萬個為卅子
是一個輸入函式,%d表示整型,%f表示浮點型,懂了沒,後面還應該有個&,也就是取址符
31樓:俏皮
格式輸入,%f就是輸入浮點型數值,如2.2
32樓:匿名使用者
scanf是取值 %後表示輸入的型別
C語言的scanf 函式問題
scanf的意思就是接受的意思啊。你輸入了換行相當於在此接受啊。在printf函式中的 代表換行符,轉義字元只在printf中有意義,在scanf函式中無意義。像樓主這種狀況應該輸入 一個數 再按回車鍵。你理解錯誤了,在c語言裡面 printf 函式是格式化輸出函式。scanf 函式是格式化輸入函式...
求vc6 0中使用scanf函式的例子,具體點的
的一般形式。scanf 格式控制,地址表列 其中格式控制一定要是符合語法的。可以修改 include void main 測試 輸入一個整數。i 236press any key to continue最後建議lz先把書上的基本知識好好看看,要理解,然後再編程式設計序,在實踐中檢驗自己的知識和程式設...
c語言中, scanf函式是什麼意思?
scanf是手動輸入並賦值給相應引數。例如scanf 輸入a引數 d a 即給輸入數字給a賦值。在程式執行之後從鍵盤錄入。c語言中scanf有什麼作用,scanf是c語言中的一個輸入函式,與printf函式一樣,都被宣告在標頭檔案裡,因此在使用scanf函式時要加上 include 在有一些實現中,...