文章目录💜😉😉😉
成都创新互联公司是一家专注于网站设计、成都网站制作与策划设计,朗县网站建设哪家好?成都创新互联公司做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:朗县等地区。朗县做网站价格咨询:13518219792
我们是通过写代码的方式让计算机知道我们的想法,或者说是通过写代码的方式让计算机知道并给我们一个结果,那么结果的显示就需要用到我们的输出函数了。
提示:以下是本篇文章正文内容,下面案例可供参考
相信大家对于输出函数并不陌生,在我们学习的第一个C语言代码中就用到了此函数,就是printf()函数,即输出函数。在我们使用输入输出函数的时候,我们要调用包含他的头文件stdio.h。
二、使用步骤 1.直接输出就是说我们让计算机反馈一个确定的值,就是常量。直观的输出答案。所要输出的值要用英文状态下的双引号引起来。
代码如下(示例):
#includeint main()
{printf("5\n"); //\n是换行的意思
printf("Hello World");
return 0;
}
输出结果
2.格式化输出5
Hello World
格式化输出的是一个变量,就是说按照你想要让它输出的格式进行输出。
代码如下(示例):
#includeint main()
{int a=1;
float b=2.5;
char c='A';
printf("a=%d\n",a);
printf("b=%f\n",b);
printf("c=%c\n",c);
return 0;
}
输出结果
a=1
b=2.500000
c=A
%d, %f, %c都是格式字符。
💜%d表示按十进制整形格式输出变量的值。
💜%f表示按十进制小数格式输出变量的值,默认保存6位小数,不够用0来补。
💜%c表示输出字符型变量的值(一个字符)。
如果我们想要小数点后保留几位有效数字,那么我们就可以在格式化输出时%f变成%.af, a就是小数点后保留的个数。
float只能提供6位有效数字,一般来说绝对6位,可能7为应该是6~7位,double可提供16位有效数字。
一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快,如果不声明,默认小数为double类型,所以如果要用float的话,必须进行强转。下面的案例中C语言的基础框架在这里我就省略啦!😜
float a = 1.24324556;
double b = 1.24324556;
float c = 1.1234567;
double d = 1.1234567;
printf("a=%f\n", a);
printf("b=%f\n", b);
printf("c=%f\n", c);
printf("d=%f\n", d);
输出结果
a=1.243246
b=1.243246
c=1.123457
d=1.123457
由此可以看出来,%f默认保留小数点后6位,而且遵守四舍五入原则。
float a = 1.24324556;
double b = 1.24324556;
printf("a=%.8f\n", a);
printf("b=%.8f\n", b);
输出结果
a=1.04324555
b=1.04324556
由此可以看出来%.8f是保留小数点后八位数字,同样遵循四舍五入原则。而float类型 的C因为只能保留到小数点后6~7位,所以进行了四舍五入,而double类型的d则可以准确的输出。
1.什么时候用float,什么时候用double???C语言中,float和double都属于浮点数。区别在于:double所表示的范围,整数部分范围大于float,小数部分,精度也高于float。
举个例子:圆周率3.1415926535 这个数字,如果用float来表示,最多只能精确到小数点后面的6位。而double大约能精确到小数点后面的15位左右。具体精确到几位,跟所用的编译器有关,但是各个编辑器编译器之间,也是相差不大的。
so so so!!!
当数值精度不需要太大的时候应该用float
精度太大的时候需要用到double
以上就是今天要讲的内容,本文仅仅简单介绍了输出函数和精度的问题,希望可以对你们有一点点帮助。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
新闻标题:C语言输出函数和精度问题-创新互联
本文链接:https://www.cdcxhl.com/article28/jgojp.html
成都网站建设公司_创新互联,为您提供搜索引擎优化、微信公众号、移动网站建设、标签优化、虚拟主机、域名注册
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联