| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦   
共有 309 人关注过本帖
标题:关于double型的初级问题
收藏  订阅  推荐  打印
不就编程
Rank: 1
等级:新手上路
帖子:6
积分:176
来自:常州
注册:2008-6-26
关于double型的初级问题

一个很早以前的问题,突然想到,提一下。
下面是一个将“  元”转换成“  元  分”的简单程序:

#include<stdio.h>
int main(void)
{
    int count=0;
    float amounts[5];
    long dollars[5],cents[5];
    for(count=0;count<=0;count++)
    {
        printf("输入第%d次钱数:",count+1);
        scanf("%f",&amounts[count]);
        dollars[count]=(long)amounts[count];
        cents[count]=((amounts[count]*100-dollars[count]*100));
    }
    for(count=0;count<=0;count++)
    printf("金额为%ld元%ld分\n",dollars[count],cents[count]);
    return 0;
}


输入 14.45(元)    它会输出14(元)  44(分)
请解释一下,谢谢~~~
2008-6-28 21:03
qGemini
Rank: 2
等级:ID已被封
帖子:100
积分:1284
注册:2008-6-28

cents[count]=((amounts[count]*100-dollars[count]*100));

cents[count]=((amounts[count]*100-dollars[count]*100))+0.5;
试试

Gemini  C/C++群57751397
本人不对自己的言论负责

http://yzfy.org
2008-6-28 21:36
himpo
Rank: 2
等级:注册会员
帖子:132
积分:1612
注册:2008-5-16

浮点数的问题吧??
2008-6-28 21:43
不就编程
Rank: 1
等级:新手上路
帖子:6
积分:176
来自:常州
注册:2008-6-26

单输入 12.55 就会输出  12  55
2008-6-28 21:46
himpo
Rank: 2
等级:注册会员
帖子:132
积分:1612
注册:2008-5-16

建议你用一个%f
输出amounts[count]看看就知道了吧。
2008-6-28 21:54
coming
Rank: 3Rank: 3
等级:中级会员
帖子:238
积分:2558
注册:2008-4-20

精度的问题哦
2008-6-29 00:44
hczsea
Rank: 2
等级:注册会员
帖子:81
积分:916
注册:2007-10-23

浮点格式数据存储问题。
2008-7-1 17:57
共有 308 人关注过本帖
发新话题
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.072253 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved