实验8-1-4 拆分实数的整数与小数部分

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

函数接口定义:

c 复制代码
void splitfloat( float x, int *intpart, float *fracpart );

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

c 复制代码
2.718

输出样例:

c 复制代码
The integer part is 2
The fractional part is 0.718

程序:

c 复制代码
#define _CRT_SECURE_NO_WARNINGS 1
#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;
}

void splitfloat(float x, int* intpart, float* fracpart)
{
    *intpart = (int)x;
    while (x > 1)
    {
        x--;
    }
    *fracpart = x;
}

效果如下:

相关推荐
jinyishu_11 小时前
几道链表经典算法题
c语言·数据结构·算法·链表
算法鑫探11 小时前
C语言入门:a和b 比大小
c语言·数据结构·算法·新人首发
一只小小的土拨鼠12 小时前
【国奖冲刺/全网首发】2026年第十四届“泰迪杯”A、B、C题完整解题思路、代码与高质量论文大合集
c语言·矩阵·数据挖掘
wengqidaifeng12 小时前
第十七届蓝桥杯C/C++软件赛B组算法题讲解
c语言·c++·蓝桥杯
cui_ruicheng13 小时前
Linux IO入门(一):从C语言IO到文件描述符
linux·运维·c语言
网域小星球13 小时前
C 语言从 0 入门(二十二)|内存四区:栈、堆、全局、常量区深度解析
c语言·开发语言
蚊子码农14 小时前
每日一题--C语言指针与内存泄漏:一道小问题的深度复盘
c语言·开发语言
Fanfanaas14 小时前
Linux 系统编程 进程篇(一)
linux·运维·服务器·c语言·开发语言·网络·学习
水云桐程序员14 小时前
C语言编程基础,输入与输出
c语言·开发语言·算法
jolimark14 小时前
微软不支持C开发Win32原因剖析,及C语言在系统开发中的优势
c语言·微软·mfc·系统开发·win32