编写一个函数,将一个浮点数中的整数部分和小数部分分别输出

2024-11-05 03:23:43
推荐回答(2个)
回答1:

1、编写函数,sp_put_num_2;内容为:

create or replace procedure sp_put_num_2(in_num    varchar2,

                                         out_num_1 out varchar2,

                                         out_num_2 out varchar2,

                                         out_info  out varchar2) as

  n_num number;

begin

  begin

    n_num     := to_number(in_num);

    out_num_1 := trunc(n_num);

    out_num_2 := case when instr(in_num, '.') > 0 then substr(in_num, instr(in_num, '.') + 1) end;

    out_info  := '转换成功';

  exception

    when others then

      out_info := '非数值类型';

  end;

end;

2、函数进行编译;

3、进行函数多场景测试,如输入为字符串类,则返回错误信息‘非数值类型’;

4、输入为数字型,如'123.25',再次测试,分别返回整数、小数部分;

回答2:

#include
#include
using namespace std;

void devide(double const data)
{
int integer = static_cast(data);
double decimal = data - integer;

cout<<"您输入数据的整数部分是:"<}

int main()
{
double data = 0;
while(1){
cout<<"请您输入一个浮点数:"< cin>>data;
devide(data);
}

return 0;
}

我发现cout输出小部分会截断,所以使用了一个显示格式