main() { float f=123.456; printf("%e\n%10e\n%10.2e\n%.2e\n%-10.2e\n",f,f,f,f,f); getch(); }
作者&投稿:幸亮 (若有异议请与网页底部的电邮联系)
第一,浮点类型小数位默认为6位,大多数编译器都是这么定了。
第二,当字符实际宽度大于你指定的宽度时,以字符宽度为准。 (其他类型也一样)
我记得.后面的数字是保留的小数位数,而且没有满五进一这么一说,一般就直接保留了,前面是开的空间(我是这么理解的,就是预留的位置),一般不写是有默认值,正负,不太记得了,好像是有负号的代表有符号,没有就代表为默认
%e是按科学计数法的方式输出,%10e是按科学计数法输出而且基数长度不能超过10,默认右对齐,不够的10位的话左边补空格
%10.2e,其他的和前面的俄一样,至于小数点是基数保留两个有效小数(包括小数点)
%-10.2e 负号表示左对齐,不够的10位的话右边补空格
依纨肝泰: include "math.h"改为#include "math.h" main()改为void main() 另外,楼主的程序当中还有两个逻辑问题: 一、m在每次循环结束时都为负 二、x2在每次循环后没有更新为1
温州市18233226862: 求教关于 C语言程序设计 的一个简单公式!! - ?
依纨肝泰: #include"stdio.h" void main() { float F=0; printf("请输入华氏温度:"); scanf("%f",&F); printf("\n对应的摄氏温度是:%.2f\n",5.0/(9*(F-32))); }
温州市18233226862: 以下这段C语言代码输出结果为什么是0 - ?
依纨肝泰: 因为变量f的类型是float, 所以对应的格式串中应该用%f,这两者必须一致,当这两者不一致时,编译时不会出错,但是输出会是0.相应的,如果你定义了一个整型量i, 而写成printf("%f\n", i); 的话,输出一样会是0,而不管i的值是什么.
温州市18233226862: C语言定义一个求如下表达式的公式 可以求f=1 - 1/2+1/3…… - 1/10 - ?
依纨肝泰: #include void main() { float f= 0 ; int N = 10;//假设求前10项和 for(int i = 1;i { if(i%2 == 0) { f = f - 1.0/i; } else { f = f + 1.0/i; } } }
温州市18233226862: 若有如下定义float f=123.4567 - ?
依纨肝泰: #include <stdio.h>int main(){ float f=123.4567;printf("%-8.1f",f); //左对齐:"-" e.g. "%-20s"//右对齐:"+" e.g. "%+20s"}"%m.nf":输出浮点数,m为宽度,n为小数点右边数位,这是右对齐,要左对齐:在m前加个"-"号 e.g. "%3.1f" 输入3852.99 ,右对齐. 输出3853.0
温州市18233226862: C语言中截尾还是进位问题 - ?
依纨肝泰: 前者截尾,比如5/2结果是2; 第二个不知道你问的什么 如果将float转换为int则截尾 比如 main() { float f=5.75; printf("(int)f=%d,f=%f\n",(int)f,f); } 输出(int)f=5,f=5.75 f虽强制转为int型,但只在运算中起作用, 是临时的,而f本身的类型并不改变.因此,(int)f的值为 5(删去了小数)而f的值仍为5.75. 当数很大是还有溢出的问题,因为float的精度比int大,要是超过int的数值范围会得到错误的数. 如果将int转换为float,貌似不用说了,直接加小数位,也可能出现精度不能完全保留的现象.
温州市18233226862: 编制一个程序包含子函数,该子函数将已知的FLOAT型数组输出. - ?
依纨肝泰: woid fun(float f) { printf("%f\n",f); } main() { float f=1.234; fun(f); }
温州市18233226862: 强制类型转换求输出结果 - ?
依纨肝泰: 首先你要明确,printf语句输出列表是按从右往左求值的,也就是说printf这句先执行了将f值按%f输出的功能,而float类型默认的精度是小数点后6位,所以会输出f=5.750000.其次,在进行float到int的强制类型转换时,c采取的措施是向下取整而不是四舍五入,因此f值为5. 最终输出结果:(int)f=5,f=5.750000
温州市18233226862: js 正则表达式 为什么加 - ?
依纨肝泰: js 正则表达式 为什么加 main(){ float f=5.75; printf("(int)f=%d,f=%f\n",(int)f,f); } 本例表明,f虽强制转为int型,但只在运算中起作用,是临时的,而f本身的类型并不改变.因此,(int)f的值为 5(删去了小数)而f的值仍为5.75.3.8 算术运算符...
温州市18233226862: C语言编程:输入一个华氏温度,要求输出摄氏温度,公式为:c=5(F - 32)/9,谢谢! - ?
依纨肝泰:[答案] #include