| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 214 人关注过本帖
标题:一个简单的问题!!!!急求解
收藏  订阅  推荐  打印 
littlerice
Rank: 1
等级:新手上路
帖子:26
积分:376
注册:2007-11-6
一个简单的问题!!!!急求解

如果我变量类型设置为  float 如 float a;
但是如果我 scanf("%f",&a)  a输入一个整数如5 或是一个带一位小数的数如5.1
当我输出的时候printf("%f",a)如何原样的把我输入的数输出? 电脑里显示都是后面带足0的
由于输入的时候是不确定是几位数或是几位小数,在"%f"里面做文章似乎不可行 啊?!

[ 本帖最后由 littlerice 于 2008-9-12 10:46 编辑 ]
搜索更多相关主题的帖子: 求解  
2008-9-12 10:45
hxlou520
Rank: 2
来自:中國_廈門
等级:注册会员
帖子:116
积分:1464
注册:2008-8-29

如果你想得到5.1可以做到的...
比如說這樣.你可以試下啊!printf("%2.1f",a)

只要我用心,沒有不成功.
在學習中不斷失敗,必然是提高自己的一種手段.
2008-9-12 11:21
rediums
Rank: 3Rank: 3
等级:中级会员
威望:2
帖子:337
积分:4097
注册:2007-7-29

以字符的方式读取输入,再以字符的方式输出
字符转化为数值,用atof函数

2008-9-12 11:25
josen0205
Rank: 3Rank: 3
等级:中级会员
帖子:179
积分:2246
注册:2007-5-8

char *killzero(float result, char *res)
{
    int i;
    
    sprintf(res, "%f", result);
    i = (int)strlen(res) - 1;
    while(i && res[i] == '0')
    {
        res[i] = '\0';
        i --;
    }
    if(res[i] == '.')
    res[i] = '\0';
    return res;
}

只有想不到,没有做不到
2008-9-12 11:31
forever74
Rank: 4
等级:高级会员
威望:3
帖子:515
积分:5984
注册:2007-12-27

to 3L:俺附议
to 4L:您和LZ说的不是同一个问题
2008-9-12 18:23
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

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