永发信息网

程序中精度是什么意思

答案:2  悬赏:50  手机版
解决时间 2021-12-29 03:07
  • 提问者网友:风月客
  • 2021-12-28 07:55
程序中精度是什么意思
最佳答案
  • 五星知识达人网友:鸽屿
  • 2021-12-28 09:18
问题一:c语言精度问题:是什么意思?干什么的? constdouble eps =1e-8; //建立一个常量名为eps,值为0.00000001(此处出现精度,小数点后八位)
int sgn(double x) //新的函数名为sgn,用处为判断一个值的大小,X为待检值
{return(x>eps)-(xeps; }问题二:C语言中单双精度数表示什么意思? c语言中单精度数和双精度数的本质区别在于数据类型所占的内存字节,浮点数,在C语言中使用的是IEEE754浮点数编码,该标准规定了单精度浮点数和双精度浮点数所占的内存字节,一般单精度数占用4个字节,双精度数占用8个字节,扩展双精度数占用80个字节。IEEE754具体的标准如下:
格式 长度 符号位 指数位 尾数位 有效位数 指数偏移 尾数说明
单精度 32 1 8 23 24 127 有一位隐含位
双精度 64 1 11 52 53 1023 有一位隐含位
扩展双精度 80 1 15 64 64 16383 没有隐含位问题三:程序设计语言中的单精度运算是什么意思 单精度运算指整型数的运算,双精度运算指浮点型数的运算。问题四:什么是C语言中的精度,与位数有什么差别 系统把一个浮点型数据分成小数部分和指数部分分别存放的,第一位是用来存放符号的,接下来是小数部分,最后是指数部分,而精度指的是小数部分的占的位数。
一个float是32位的,符号占一位,有效数字(即小数部分)占6位,剩下的是指数部分的位数,所以他的最大值可以是3.4E38。
一个double是64位的,符号占一位,有效数字占15位,剩下的是指数部分的位数,所以他的最大值能达到3.4E308
123456.7890000如果是用float类型的话,小数点后面都是无意义的,因为float接受7位的,而后面部分已经超过7位了,不能准确 的表示出来,所以这里的接受是指能正确表达小数的7位有效数字问题五:C语言中,单精度实型变量和双精度实型变量的具体区别是什么呀 每一本讲C的书都会直接告诉你,而且不用动一丁点脑子。问题六:c语言中宽度精度问题 你的代码有错误
int是整形定义,a和b不能是小数
%d也是用于显示整型数的
你的应该为:
float a=20.526,b=20.533;
printf(%6.2f%.2f\n,a,b);
%.2是保留2位小数的意思
下面附:
printf的格式控制的完整格式:
% - 0 m.n l或h 格式字符
下面对组成格式说明的各项加以说明:
①%:表示格式说明的起始符号,不可缺少。
②-:有-表示左对齐输出,如省略表示右对齐输出。
③0:有0表示指定空位填0,如省略表示指定空位不填。
④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。
⑤l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。
---------------------------------------
格式字符
格式字符用以指定输出项的数据类型和输出格式。
①d格式:用来输出十进制整数。有以下几种用法:
%d:按整型数据的实际长度输出。
%md:m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。
%ld:输出长整型数据。
②o格式:以无符号八进制形式输出整数。对长整型可以用%lo格式输出。同样也可以指定字段宽度用“%mo”格式输出。
例:
main()
{ int a = -1;
printf(%d, %o, a, a);
}
运行结果:-1,177777
程序解析:-1在内存单元中(以补码形式存放)为(1111111111111111)2,转换为八进制数为(177777)8。
③x格式:以无符号十六进制形式输出整数。对长整型可以用%lx格式输出。同样也可以指定字段宽度用%mx格式输出。
④u格式:以无符号十进制形式输出整数。对长整型可以用%lu格式输出。同样也可以指定字段宽度用“%mu”格式输出。
⑤c格式:输出一个字符。
⑥s格式:用来输出一个串。有几中用法
%s:例如:printf(%s, CHINA)输出CHINA字符串(不包括双引号)。
%ms:输出的字符串占m列,如字符串本身长度大于m,则突破获m的限制,将字符串全部输出。若串长小于m,则左补空格。
%-ms:如果串长小于m,则在m列范围内,字符串向左靠,右补空格。
%m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。
%-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果n>m,则自动取n值,即保证n个字符正常输出。
⑦f格式:用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法:
%f:不指定宽度,整数部分全部输出并输出6位小数。
%m.nf:输出共占m列,其中有n位小数,如数值宽度小于m左端补空格。
%-m.nf:输出共占n列,其中有n位小数,如数值宽度小于m右端补空格。
⑧e格式:以指数形式输出实数。可用以下形式:
%e:数字部分(又称尾数)输出6位小数,指数部分占5位或4位。
%m.ne和%-m.ne:m、n和”-”字符含义与前相同。此处n指数据的数字部分的小数位数,m表示整个输出数据所占的宽度。
⑨......余下全文>>问题七:C语言编程中,%c,%d,%f都是什么意思? 这些都是格式化符号,%c表示一个字符,%d表示一个整数,%f表示一个单精度的浮点数。问题八:C语言中什么是浮点型变量的精度? 就是一个数中有用的位数,例如程序给出的单精度结果为1.21545415 则前7位是有用最后的15就是不准的问题九:谁能解释一下VB编程中什么是单精度型什么是双精度型啊,E后面是什么意思?最好把VB的数据类型都解释一下! MSDN上的解释是:
单精度型Single
存储有符号的 IEEE 32 位(4 个字节)单精度浮点数,
负数取值范围为 -3.4028235E+38 到 -1.401298E-45,
正数取值范围为 1.401298E-45 到 3.4028235E+38。
单精度数值存储实数数值的近似值。
双精度型Double
存储带符号的 IEEE 64 位(8 个字节)双精度浮点数,
负值取值范围为 -1.79769313486231570E+308 到 -4.94065645841246544E-324,
正值取值范围为 4.94065645841246544E-324 到 1.79769313486231570E+308。
双精度数值存储实数数值的近似值。
E是科学技术法的标志
1E2就是1*10的2次方,即100
1.23E8就是123000000
1E-2就是0.梗1
-1.23E-4就是-0.000123
全部回答
  • 1楼网友:酒者煙囻
  • 2021-12-28 10:06
回答的不错
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯