c语言 %d %f %lf %d可表示的最大和最小范围是多少?超过了范围 计算机怎么显示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言 %d %f %lf %d可表示的最大和最小范围是多少?超过了范围 计算机怎么显示相关的知识,希望对你有一定的参考价值。
c语言 %d %f %lf %d可表示的最大和最小范围是多少?超过了范围 计算机怎么显示? %f小数点后最高能表示几位? 如果小数超过了他的最高位数会怎样 ? %lf小数点后最高有几位?超过了怎么显示 ? 老师讲double 是直接用%f的 这样有什么问题吗 在什么时候会出问题。。。。。有点多吼 给100吧
这表示格式,至于具体数值大小,要看你申请的变量类型。
比如
u16 a;
printf("%d",a);那么输出最大就是16BIT的值=65535;
假如
u8 a;那么输出就是最大255;
如果超了,比如 u8 a = 256;那么相当于 256%255 ;a的值是1;
%lf是对应的是double,有效位好像是16位,比如有一个数整数占了10位,那么小数只能保存6位。
f lf 最好不要混用,记数方法不一样。如果数值小还好,大了就乱套了。
参考技术A /*简单说来,%d,%f, %u 就是有一定处理能力的机器,而象 int , float, char, 就是一些原料。1 塑料 -> 脸盆机 -> 脸盆 int -> %d
2 混泥土 -> 砖块机 -> 砖块 float -> %f
如果你 塑料 -> 砖块机 -> 塑料砖, 显然这不合理,大致就是这个意思,
对%u 而言它只处理无符号整形,首先大小是 sizeof( unsigned int ),
如果你给的是 sizeof(float);它会把超出的部分舍去,你给的有符号整形,它会当做无符号处理。
代码: */
#include <stdio.h>
int main(int argc, char const* argv[])
int a = -1;//它排列 11111111111111111111111111111
float b = 1;//.....
unsigned int c = 1;//00000000000000000000000000000000
printf("int -1 = %u\\nfloat 1 = %u\\nunsigned 1 = %u\\n", a, b, c);
return 0;
//总之我也不是很总,等大牛补充吧。。我也想知道。。。 参考技术B %d是按照十进制整数形式输出,%nd中的n表示有效数字的位数;
%c是按照字符型输出;%f是按照浮点数输出;%lf是按照长浮点数输出;
%o是按照八进制输出;%x是按照16进制输出;%e是按照科学计数法输出结果。
以上都是输出格式控制符,谢谢! 参考技术C %d %f %lf %d可表示的最大和最小范围是多少?
--书上有个表,一看便知。
超过了范围,计算机怎么显示?
--怎么能超出呢?
--溢出了?
--减去超出的,保存剩下的。
%f小数点后最高能表示几位?
%lf小数点后最高有几位?
--书上有个表,一看便知。
如果小数超过了他的最高位数会怎样?
超过了怎么显示?
--位数是限定的,不会超过的。 参考技术D %d %f %lf %d可表示的最大和最小范围是多少?
--书上有个表,一看便知。
超过了范围,计算机怎么显示?
--怎么能超出呢?
--溢出了?
--减去超出的,保存剩下的。
%f小数点后最高能表示几位?
%lf小数点后最高有几位?
--书上有个表,一看便知。
如果小数超过了他的最高位数会怎样?
超过了怎么显示?
--位数是限定的,不会超过的。追问
书上没有 %f和%lf的位数问题
追答f,
按照 float,从 (10 的-37 次方),到...。
即,可以有 37 位小数。
这个我知道 但是%f在计算机应该不是37位小数吧
追答以 10 进制来说明,就是 37 位小数。
再深究,就是 4 个字节的二进制数,称为浮点数。
浮点数的格式,包括:指数、尾数、原码、补码... ...
C语言中printf输出float和double都用%f么(scanf又如何)
答:
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自动选择合适的表示法
参考资料:c语言-百度百科
参考技术A 1 printf输出float和double都可以用%f,double还可以用%lf。2 scanf输入float用%f,double输入用%lf,不能混用。本回答被提问者采纳 参考技术B 1、printf输出float和double都可以用%f,同时double还可以用%lf。
2、scanf输出float用%f,而double输出用%lf,不能混用。
拓展资料:
C语言编程软件是一款使用代码C语言进行编程的软件,C语言简洁、高效、灵活的特性令其具有独特魅力。现在的程序编写朝着越来越冗长庞大的方向发展,而C语言虽然属于相对'低级'的编程语言,但它的简洁之美是无可替代的。 参考技术C 1 printf输出float和double都可以用%f,double还可以用%lf。
2 scanf输入float用%f,double输入用%lf,不能混用。 参考技术D double用%lf.scanf和printf一样
以上是关于c语言 %d %f %lf %d可表示的最大和最小范围是多少?超过了范围 计算机怎么显示的主要内容,如果未能解决你的问题,请参考以下文章