1楼:阳光上的桥
-798.124换航为二进制形式的值是:
-1100011111.111000000100000110001001001101110100101111
因为机器内部必须使用二进制方式存储,而且精度有限,这样去除了超过的位数后(去除时要四舍五入),结果与原始值就有差异了,所以浮点数多数都是不准确的。
具体到本数末尾为什么是023,这要看所使用的类型精度的小数点位数,位数不同结果也可能会不同,因为从不同的位置截断。
0.5转换为二进制是0.1,这样的数是能精确表示了,它不会乱。
2楼:匿名用户
浮点数都是有精度问题的,就算你设 x=0 ,用%f打印出来结果会是零点几,系统认为一个数足够小的时候就是0了. 如果很在意,可以把 %f 改为 %7.3f , 以限定所要的显示位数
c语言问题,为什么会输出负数
3楼:匿名用户
在你的switch语句最后都加一个default:看一下switch(d)
switch(u)
如果出现error这行,说明你的fflush()没有起作用,改正方法是在scanf()函数后,加一个getchar();
如果没有出现,把你的输入信息粘出来,即x d u都是什么。再帮你看
4楼:匿名用户
这个问题有多种可能,不一而足。
算法有错误,最终计算结果是负数。输出自然会是负数。
例如:inta=1;
intb=a-2;
printf("b=%d",b);
//输出结果:b=-1
超过变量类型的最大取值范围,发生溢出。
例如turbo c里int是16位,取值范围-32768~32767。如果计算过程当中,数值超过32767,由于补码的关系。结果就有可能是负数。
这种情况,就需要使用取值范围更大的数据类型。
例程:#include
voidmain()
//输出结果:a=32767,b=-32768
5楼:无丹羿昭
我的感觉是,在你执行printf
这个过程中,输出%d的时候,其实你的a的值已经出问题了,所以后面也会有错。你可以试试看,把%d放到第二个输出,你就会发现,第一个问题,后两个出问题了。你可以改成这样。
当你在执行第二个printf的时候,你的a的值就是为double型等于1.550000,然后再开始执行第二个printf
6楼:匿名用户
溢出了,把数据类型定大一些
7楼:嚣张得很
把用float定义的变量全改成double定义,把用%f全改成%lf
c语言问题,输出结果总是负数,求教
8楼:孤0鸿
你定复义的类型不一致,前边定义制是双精度double的实数bai,后边输出用
du的是%f单精度zhi的浮点型,这两个数精度差太dao多,在c++里double输出用的是%lf,你看看这里是不是,要么把前边类型改成float,要么后边输出改成%lf
9楼:匿名用户
把所有的%f都改成%lf再试试 double需要long float格式
c语言里%f中间加数字是什么意思
10楼:匿名用户
%f是用于格式化输入输出函数,对应类型为float的格式字符。加数字的情况仅适用于输出函数,比如printf。
其形式为
printf("%a.bf", var);
其中a,b为常数。
含义为:
1 a, 代表输出占|a|(a的绝对值)个字节的宽度,当实际宽度超过a时,按实际宽度输出,否则输出a个字节,不足部分补空格。
如果a为正数,输出的有效数字在右侧,左侧补空格。
如果a为负数,输出的有效数字在左侧,右侧补空格。
2 b,代表输出带有b位小数,不足部分补0。
a,b可单独使用,比如
printf("%4f", 1.2); 会输出一个空格加上1.2。
printf("%.3f", 1.2); 会输出1.200。
printf("%-8.4f", 1.2); 会输出1.2000再输出两个空格。
11楼:匿名用户
比如%7.2f 点前面的7代表输出的数的宽度,也就是位数~包括小数点后的数字;点后的2代表小数点后面的数字的个数;,一般只写成%.2f,比如
float pi=3.1415
printf("%.2f",pi)
输出结果为3.14
参考:http://zhidao.baidu.***/question/347393726.html
12楼:多啦
以浮点数据格式输出,加数字就是表示输出浮点数据小数点后的位数
请采纳答案,支持我一下。
13楼:匿名用户
这是为了说明输出小数的格式。12.9的意思就是占12个格,其中小数部分占9格。
vc语言中的%f在输出的时候是小数点后面需要写几个0啊
14楼:陈冠钢
一般如果不作设定,会输出小数点后6位。
不需要规定写几个零。可内
以自定义输出小容数点后几位格式如下:
#include
void main()
结果:1.22
1.222222
c语言中原来负数我输出时用想输出为16进制
1楼 匿名用户 看输出的无符号整数最高位是否为1,如果是1则是负数 2楼 匿名用户 x 并不是只是输出正数的 3楼 匿名用户 前面加个负号好了,一 x。 c语言,为什么 o和 x输出的都是无符号数,为什呢不能有负数 4楼 匿名用户 不是说不能有负数,如果使用 x和 o输出时,应该先把你的数据转为二进...
求高手帮忙解卦呀,万分感谢,急 解卦 求高手帮忙!!!!
1楼 矮人撕毯 官鬼为用神,在应爻化午火忌神回头克,不吉。春季金不旺。并且正月为金绝之时。 不利用神。更重要的是卦为六冲。不吉。 也无冲中逢合解救。该段姻缘没有结果。夏季一到基本就结束了。 还是正视自己的人生为好。 2楼 匿名用户 时间弄错了吧?二十七号应该是辛丑月。 应克世,他对你不好,好来硬的。...
c语言编写程序从键盘输入数算出总和
1楼 匿名用户 include int main ave sum 5 printf 总和 d sum printf 平均数 d ave 2楼 斩orz赤红之瞳 include int main printf 和为 d 平均值为 2f sum sum 5 0 return 0 如何使用c语言编写一个程...