输入数据时是输入:0吗?注意Φ间的逗号很重要,如果没有比如说输入了:0,结果就出错了
仔细看了你的程序,d,p为整型int型最大值为32767,你要输入300000显然溢出了,將d的类型变为long型就可以了如果为了保险d,p的类型的都变一下:
long d,p;
scanf("%ld,%ld",&d,&p);
但是运行后还是溢出。我发现你的公式好像有问题:p/p为1它减去d*r是一个負数,所以log不能求解结果实际是个随机数。估计你的公式写错了我在网上没有搜到相应的公式,你看看你的书写成正确的C语言输出表达式。
另外你要注意C语言输出里的log是以e为底的,即数学中的ln(x)数学中的log函数,在C语言输出中要写成log10(x)
公式写成C语言输出表达式应该是p/(p-d*r),分母是p-d*rC语言输出中的“/”是两数相除,不能表示数学中的繁分式