C语言 | 用%f控制符输出6位小数

举报
C语言入门到精通 发表于 2021/02/06 14:33:08 2021/02/06
【摘要】 C语言源码案例

例4:C语言实现用%f输出实数,且只能得到6位小数

解题思路:不指定输出数据的长度,由系统根据数据的实际情况决定数据所占的列数。系统处理的方法一般是:实数中的整数部分全部输出,小数部分输出6位。

源代码演示:

#include<stdio.h>//头文件
int main() //主函数
{
  double double_temp,temp;//定义双精度浮点型变量
  double_temp=1.0;//初始化double_temp
  temp=double_temp/3;//将double_temp除以3得到得结果赋值给temp
  printf("%f\n",temp);//输出temp
  return 0;//函数返回值为0
}
编译结果:

0.333333

--------------------------------
Process exited after 0.074 seconds with return value 0
请按任意键继续. . .

在上述代码中,虽然double_temp是双精度型,double_temp/3的结果也是双精度,但是用%f格式声明只能输出6位小数。

这里也可以用%m.nf指定数据宽度和小数位数。

在C语言中,/ 是除,如果是整数相除,只取整数部分,没有四舍五入之类的;%是取模,即取除法的余数。

如果取模发现被除数比除数小,比如:

#include<stdio.h>//头文件
int main() //主函数
{
  printf("%d",2%5);
}

%的结果是商为0余2 ,输出如下:

2
--------------------------------
Process exited after 1.792 seconds with return value 0
请按任意键继续. . .

大白话就是在求模时,如果被除数比除数小,输出的值则是被除数本身。
C语言开发工具
更多案例可以go公众号:C语言入门到精通
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。