重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
需要准备的材料分别有:电脑、C语言编译器。
专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!创新互联公司为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,网站设计制作、成都网站建设负责任的成都网站制作公司!
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,调整C语言代码:double c;c=1.0 * a/b;。
3、编译器运行test.cpp文件,此时成功将除法保留2位整数输出。
若除数是整形数,则除数的绝对值与0比较,若除数是浮点数,则除数的绝对值与一个足够小的进行比较,不如这个做够小的数是: epsilon = 1.0e-7。该函数的返回数据类型应该为double类型。 #include math.h // 包含函数fabs()double quotient(double dividend,double divisor) { double spsilon = 1.0e-7; if(fabs(divisor) = epsilon) { printf("除数不能为零。\n\n"); exit(1); // 异常出错退出整个程序 } return divitient/divisor;}
不是“必须"有一个是浮点型,只不过如果两个数都是整形的话,会按照整形数的除法,只有商的部分。
直接相除就行,比如:有
double f1();
double f2();
int f3();
int f4();
就可写:
double d1 = f1()/f2();
double d2 = f1() / f3(); // 等号右侧表达式为浮点型;
int d3 = f3() / f4(); //等号右侧表达式为int型;
double d4 = ((double)f3()) / f4();//将第一个函数的返回值转换为double型
临时写的,程序不完整,可能会有漏洞
/*-------------------------------------*/之间的部分需要自己补充,不过基本思想已经体现了,仔细想想应该不难做了
#include
stdio.h
#include
string.h
/*超级除法函数(只提供整数相除)*/
/*ret为输出的结果,必须保证空间足够*/
/*devidend被除数,divider除数*/
void
SuperDivide(char*
ret,
int
devidend,
int
divider)
{
int
bPointShowed
=
0;
/*用来表示是否出现过小数点了*/
/*使用的数组下标*/
int
i
=
0;
/*取余数用的*/
int
remainder
=
devidend;
/*用这个循环计算*/
while(1)
{
/*被除数大于除数才能除*/
if(remainder
=
divider)
{
/*用来表示是否除尽了*/
int
bOver
=
0;
/*除尽了*/
if(devidend
%
divider
==
0)
{
bOver
=
1;
}
else
{
/*取余数*/
remainder
=
devidend
%
divider;
}
int
retNum
=
devidend
/
divider;
/*----------------------
这里需要把retNum的每一位数单独填充到ret中,结合下标i++
---------------*/
/*-------------------------------------*/
/*除尽了就跳出了*/
if(bOver)
{
/*如果bPointShowed为0则需要在ret[i]处加上小数点*/
break;
}
}
else
{
/*不够除了*/
remainder
*=
10;
/*如果bPointShowed为0则需要在ret[i]处加上小数点,如果有小数点了则需要补0?*/
}
/*计算到100000位了就跳出吧*/
if(i
=
100000
-
1)
{
break;
}
}
}
int
main()
{
int
devidend,
divider;
scanf("%d
%d",
devidend,
divider);
char
ret[100000];
/*全部清0*/
memset(ret,
0,
100000);
SuperDivide(ret,
1,
1);
printf("%s",
ret);
return
0;
}
#include stdio.h
int main( )
{ double a,b,c;
scanf("%lf%lf",a,b); //读入被除数和除数
c=a/b; //计算商
printf("%g/%g=%g\n",a,b,c); //两行输出
printf("商的整数部分是%d\n",(int)c); //取整数并输出
return 0;
}