S1E4 课后练习
1.为什么2015用double,但是3.1415就用了float2.%10e和%-10E的含义
3.%后面的字母大小写有区别吗,比如%d %D,%e %E 1. 不知道你要问什么,double 可以存 float 与 int,没有不可以
2. 大小写没有关系,科学记号显示 e 或 E 而已,但是前面有符号是左对齐;10 是不管这数字的大小,以 10 个字符的宽度显示。上机就清楚了。
e 3.9265e+2
E 3.9265E+2
0123456789
213 左对齐
213 右对齐 claws0n 发表于 2018-9-2 22:49
1. 不知道你要问什么,double 可以存 float 与 int,没有不可以
2. 大小写没有关系,科学记号显示 e 或 E...
那么大佬就是可以把小甲鱼里的%f改成%d是ok的但是浪费资源对吧 Somnr丶风 发表于 2018-9-3 01:53
那么大佬就是可以把小甲鱼里的%f改成%d是ok的但是浪费资源对吧
不可以,数据类型要一致,会报错的。那个要强制转型。
scanf() 最明显的。
double a;
scanf("%lf", &a);//ok scanf("%f", &a); //无效的输入
是浪费了一点,不过你不是在面对单片机吧?没有必要计较这些 claws0n 发表于 2018-9-3 02:01
不可以,数据类型要一致,会报错的。那个要强制转型。
scanf() 最明显的。
双精度浮点和单精度浮点的理解不太清楚- -大佬解释一下嘛,就是什么时候用%d,什么时候用%f claws0n 发表于 2018-9-3 02:01
不可以,数据类型要一致,会报错的。那个要强制转型。
scanf() 最明显的。
大佬有没有那种表格之类的可以显示%加各种英文的用法的= = Somnr丶风 发表于 2018-9-3 02:17
双精度浮点和单精度浮点的理解不太清楚- -大佬解释一下嘛,就是什么时候用%d,什么时候用%f
printf() scanf() 看针对什么数据类型用不同的格式
int-> %d
long-> %l //是小写的 L
float -> %f
double ->%lf(long float)
单精度、双精度基本上一样,目前来说 float 就够用了,差别是小数点可以精确到几位数。好像是 7 跟 15 位小数的差别,你需要这样精确的数字吗? claws0n 发表于 2018-9-3 02:29
printf() scanf() 看针对什么数据类型用不同的格式
int-> %d
long-> %l //是小写的 L
好的,int就是单字符,float是浮点型,然后double就是长一点的浮点型,这样理解没问题吧,那么long是啥- -%long是啥意思 Somnr丶风 发表于 2018-9-3 16:37
好的,int就是单字符,float是浮点型,然后double就是长一点的浮点型,这样理解没问题吧,那么long是啥-...
其实差别在于内存用几个字节存储(一个字节为 8 位元)
char 才是字符(其实也是整型) 一个字节
short 短整型 两个字节
int 是整型(整数) 四个字节
long 长整型 四或八个字节(看系统与编译器)
四个字节与八个字节的差别在哪里?最大数。作业不是有一个 limit 的吗?去看看~
unsigned int 2^31 - 1 到 31 次方
unsigned long 2^63 - 1 到 63 次方 printf格式化输出函数可以查看小甲鱼老师在带你学习带你飞版块里的https://fishc.com.cn/forum.php?mod=viewthread&tid=66471&extra=page%3D1&mobile=2
页:
[1]