编写一个程序,读取一个浮点数,先打印成小数点形式,再打印成指数形式

问题

编写一个程序,读取一个浮点数,先打印成小数点形式,再打印成指数形式。然后,如果系统支持,再打印成p记数法(即十六进制记数法)。按以下格式输出(实际显示的指数位数因系统而异):

Enter a floating-point value: 64.25
fixed-point notation: 64.250000
exponential notation: 6.425000e+01
p notation: 0x1.01p+6

分析

此C语言程序题考查的是正确读取浮点数、打印输出格式转换。

很明显,题干给出的示例中,输入的是64.25,第一行输出的就是原格式的值,第二行输出的是保留小数位数6位的值,第三行输出的是保留小数位数6位的以10为底科学计数法,第四行输出端的是16进制的浮点数的科学计数法,保留了两位小数。

实践

此处根据以上分析内容得到以下代码:

#include<stdio.h>
void main()      //读取一个浮点数,先打印成小数点形式,再打印成指数形式。然后,如果系统支持,再打印成p记数法(即十六进制记数法)。
{
    float a;
    printf("Enter a floating-point value:");
    scanf("%f",&a);
    printf("fixed-point notation:%.6f\n",a);
    printf("exponential notation:%.6le\n",a);
    printf("p notation:%.2a\n",a);
}

运行结果

运行结果
运行结果

到此为止,此题结束。


本人于2023年3月11日20:22:05实践并撰写以上内容,特与此记录并分享。

© 版权声明
THE END
喜欢就点赞支持一下吧,如果觉得不错或日后有所需要,可以收藏文章和关注作者哦。
点赞2打赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容