当前位置: 代码迷 >> C语言 >> 整形变量的除法运算
  详细解决方案

整形变量的除法运算

热度:1121   发布时间:2008-02-12 15:47:25.0
整形变量的除法运算
当3和2都为整形变量的时候。3/2=1   2/3=0.      3.0/2.0=1.5   那么2.0/3.0=?   等于0.6还是0.666666666666666666666666666666666666666666666666666666666666.........?
搜索更多相关的解决方案: 变量  整形  除法  运算  

----------------解决方案--------------------------------------------------------
这个上机验证.
----------------解决方案--------------------------------------------------------
应该是在输出时决定输出的位数吧
----------------解决方案--------------------------------------------------------
不好说
如果是a=2.0,b=3.0   a/b  那结果是0 ;

如果是这样写:printf("%d",2.0/3.0);    那结果是1431655765  因为数据溢出
----------------解决方案--------------------------------------------------------
应该是printf("%f",2.0/3.0)
输出0.666667
----------------解决方案--------------------------------------------------------
看你是什么类型的2.0了
float只有六位(或者是八位)小数有效数字
double好像是15位
----------------解决方案--------------------------------------------------------
和类型有关吧
----------------解决方案--------------------------------------------------------
类型吧
----------------解决方案--------------------------------------------------------
一、
#include<stdio.h>
main()
       {
         int a=2,b=3;
    float c,d;
     c=a/b;
          d=b/a;
    printf("c=%d\n",c);
         printf("c=%f\n",c);
         printf("d=%d\n",d);
         printf("d=%f\n",d);
         getch();
       }
不多说了,
结果是:c=0
        c=0.000000
        d=0   
        d=1.000000

二、
#include<stdio.h>
main()
       {
         float a=2,b=3;
    float c,d;
     c=a/b;
          d=b/a;
    printf("c=%d\n",c);
         printf("c=%f\n",c);
         printf("d=%d\n",d);
         printf("d=%f\n",d);
         getch();
       }
结果是: c=0
        c=0.666667
        d=0
        d=1.500000
###注意一和二的区别
----------------解决方案--------------------------------------------------------
  相关解决方案