若除数是整形数,则除数的绝对值与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;}
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:空间域名、网络空间、营销软件、网站建设、正镶白网站维护、网站推广。
123456789101112131415161718192021222324252627#includestdio.h#includestdlib.h#includetime.hint main(){ srand(time(0)); int a,b,times=0; a=rand()%100+10; b=rand()%10+1; while(times3) { int t=0; printf("%d/%d=____",a,b); scanf("%d",t); if(t!=a/b) { printf("wrong\n"); }else { printf("right\n"); return 0; } times++; } printf("Three times have passed"); return 0;}
在C语言里整数除以整数只得整数,小数部分被省略
C语言中和除法相关的运算符有两个"/"整除运算符和"%"取余运算符。
整除就是求商,取余就是求余数,这是两者最本质的区别,需要注意的是在C语言%取余运算符只能操作整型数据对象。
如果是两个整数型的变量相除,如10/3,其结果是3,而不是3.3333333;又如10/4,其在C中的结果是2,而不是2.5。也就是说,整数型变量相除,如果其结果从数学角度上看是小数,无论是否可以四舍五入进位,C都会讲小数点后的部分抛弃。
c语言中其他的计算函数。
int isdigit(int ch) 若ch是数字('0'-'9')返回非0值,否则返回0。
int isgraph(int ch) 若ch是可打印字符(不含空格)(0x21-0x7E)返回非0值,否则返回0。
int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0。
double fabs(double x) 返回双精度参数x的绝对值。
long labs(long n) 返回长整型参数n的绝对值。
double exp(double x) 返回指数函数ex的值。
#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;
}