Advertisement

ZZULIOJ 1166: 实数取整问题(指针相关)

阅读量:

题目描述

输入一个实数,输出其整数部分。需要注意的是,该实数的位数不得超过100位。输入中的整数部分可能存在多余的前导零,在输出时应将其去除,但若整数部分为零,则不能将该零删除。例如,当输入为0023.56732时,输出应为23,而非0023;而输入为0.123时,输出应为0。此外,输入也可能不包含小数部分。
要求定义并调用rounding()函数,函数原型如下:
char *rounding(char *p)
{
//将字符串p表示的实数进行取整操作,并生成新的字符串由函数返回
}

输入
请输入一个实数。

输出
请输出其整数部分。

C语言代码

复制代码
    #include<stdio.h>
    #include<string.h>
    char *rounding(char *p)
    {
    int i,len,k,flag=0;
    char *r;
    len = strlen(p);
    for(i=0;i<len;i++)    
    {
        if(*(p+i) == '.')    
        {
            k = i;    //k的值为'.'的数组下标值 
            *(p+k) = '\0';    //把'

全部评论 (0)

还没有任何评论哟~