首先说一句,这的问题有错,
如果是第一个数【被】第二个数除,则不应该判断第二个数是否为0,而应该判断第一个数是否为0.
为此,我这里编程判断的是第一个数不为零。
我下面代码有提示,如果你觉得一定是判断第二个数是否为零,根据我的提示自行修改
代码如下:
#include
double Divider(int x,int y);
int main()
{
int x,y;
printf("请输入第一个数值:");
scanf("%d",&x);
printf("请输入第二个数值:");
scanf("%d",&y);
printf("\n-----------\n结果为:\n------------\n");
printf("%lf\n",Divider(x,y));
return 0;
}
double Divider(int x,int y)
{
double answer;
if(x==0) /*这里判断的是第一个数,你要改成判断第二个数是否为零,把x改成y就行*/
return -1;
else
{
answer=(double)y/x*1.0;/*如果你判断第二个数为0,则把此处代码中x/y改为y/x*/
return answer;
}
}
include
double Divider(int x,int y){
if(0==y) return -1;
else return (double)x/y;
}
int main(){
int m,n;
scanf("%d%d",&m,&n);
printf("%f",Divider(m,n));
}
//---------------------------------------------------------------------------
#include
double Divider(int x,int y)
{
return y?(double)x/y:-1;
}
int main(void)
{
int a,b;
scanf("%d%d",&a,&b);
printf("%g\n",Divider(a,b));
return 0;
}
//---------------------------------------------------------------------------