ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

习题8-1 拆分实数的整数与小数部分 (15 分)

2021-05-02 20:57:44  阅读:199  来源: 互联网

标签:小数 15 int float part splitfloat 习题 fracpart intpart


 

本题要求实现一个拆分实数的整数与小数部分的简单函数。

函数接口定义:

void splitfloat( float x, int *intpart, float *fracpart );

其中x是被拆分的实数(0≤x<10000),*intpart*fracpart分别是将实数x拆分出来的整数部分与小数部分。

裁判测试程序样例:

#include <stdio.h>

void splitfloat( float x, int *intpart, float *fracpart );

int main()
{
    float x, fracpart;
    int intpart;

    scanf("%f", &x);
    splitfloat(x, &intpart, &fracpart);
    printf("The integer part is %d\n", intpart);
    printf("The fractional part is %g\n", fracpart);

    return 0;
}

/* 你的代码将被嵌在这里 */

输入样例:

2.718

输出样例:

The integer part is 2
The fractional part is 0.718
我的代码:
void splitfloat( float x, int *intpart, float *fracpart )
{
    int n = 0;
    //判断范围
    if(x >= 0 && x < 10000)
    //split-int
    {
            while(x >= 1)
        {
            x --;
            n ++;
        }
        //判定特殊情况
        *intpart = n;
        if(x != 0)*fracpart = x;else *fracpart = 0;
    }
}

标签:小数,15,int,float,part,splitfloat,习题,fracpart,intpart
来源: https://blog.csdn.net/weixin_51448121/article/details/116356757

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有