| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 424 人关注过本帖
标题:关于int和float的问题
只看楼主 加入收藏
x葱
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-2-29
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
关于int和float的问题
我刚学习c语言,在c++6.0上写了这个小程序发现输出结果是个错误的数而,M改成9999或者将N改成10000就能输出正确结果了,这是和int的范围有关吗?
#include <stdio.h>
#define N 100000
#define M 99999
int main()
{
    int z;
    z=N*M;
    printf("M*N=%d\n",z);
    return 0;
}
但是我将z改成浮点型,将M,N也转化成浮点型为什么就能输出正确结果了?浮点型的可以指定的数据宽度最大是多少啊?
#include <stdio.h>
#define N 100000
#define M 99999
int main()
{
    float x,y,z;
    x=N;
    y=M;
    z=x*y;
    printf("M*N=%10.0f\n",z);
    return 0;
}
搜索更多相关主题的帖子: c语言 青少年 
2012-02-29 22:11
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:10 
嗯,比喻你一大杯水 用一个小杯子来装就会出现溢出

用心做一件事情就这么简单
2012-02-29 23:22
huang1982
Rank: 2
等 级:论坛游民
帖 子:25
专家分:29
注 册:2012-2-13
收藏
得分:10 
就是2楼的意思。int float 等类型的具体范围你往后学就知道了。
2012-03-01 00:03
快速回复:关于int和float的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015495 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved