您现在的位置是:首页 >综合 > 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" .
本文到此讲解完毕了,希望对大家有帮助。