例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
请按任意键继续. . .
大白话就是在求模时,如果被除数比除数小,输出的值则是被除数本身。
更多案例可以go微信公众号:C语言入门到精通,作者:闫小林
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。