您現在的位置是:首頁 >綜合 > 2023-07-23 03:40:45 來源:
c語言scanf為什么要&符號(c語言scanf()
導讀 大家好,我是小小根,我來為大家解答以上問題。c語言scanf為什么要&符號,c語言scanf(很多人還不知道,現在讓我們一起來看看吧!1、不一樣...
大家好,我是小小根,我來為大家解答以上問題。c語言scanf為什么要&符號,c語言scanf(很多人還不知道,現在讓我們一起來看看吧!
1、不一樣的,這么都是格式字符,意義如下:
2、格式字符 意 義
3、d 以十進制形式輸出帶符號整數(正數不輸出符號)
4、o 以八進制形式輸出無符號整數(不輸出前綴0)
5、x,X 以十六進制形式輸出無符號整數(不輸出前綴Ox)
6、u 以十進制形式輸出無符號整數
7、f 以小數形式輸出單、雙精度實數
8、e,E 以指數形式輸出單、雙精度實數
9、g,G 以%f或%e中較短的輸出寬度輸出單、雙精度實數
10、c 輸出單個字符
11、s 輸出字符串
12、前面加個%,你自己對照下吧
13、長度:長度格式符為h,l兩種,h表示按短整型量輸出,l表示按長整型量輸出。你這個“%lf”,是在定義輸入的類型為double(雙精度)是用的,不明白,你可以測試下:
14、#include<stdio.h>
15、void main()
16、{ double i;
17、scanf("%lf",&i);
18、printf("%f\n",i);
19、}
20、和
21、#include<stdio.h>
22、void main()
23、{ double i;
24、scanf("%f",&i);
25、printf("%f\n",i);
26、}
27、我這里用了2個編譯器分別測試了下,一個如果定義double行,輸入的時候必須要用%lf,一個就不用了,用%f也行,但是精度還是有區別的,綜合以上,如果定義double型數據,輸入最好是用"%lf" .
本文到此講解完畢了,希望對大家有幫助。