求方程的根,用3个函数分别求当
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/17 08:11:55
主函数中加个if条件判断啦!if(a==0)\x09{\x09\x09if(b==0)\x09printf("ERROR!\n");\x09\x09else\x09\x09printf("x=%.2l
#include#include#includeusingnamespacestd;intmain(){inta,b,c;intt;//t就是b^2-4ac判断它和0的大小决定是解否是复数couta>
#include#includefloatfun1(floatdisc){\x05if(disc\x05\x05printf("方程无解!");\x05return0;}floatfun2(float
x=-b加减根号下b的平方-4ac除以2a.b*b-4ac>0,x有两个值,b*b-4ac=0,x有一个值,b*b-4ac
if(d==0)deltaZero(a,b,c);//你定义的参数是三个,怎么调用的时候传进去四个呢?elseif(d>0)deltaLargerZero(a,b,c);elseif(d再问:嗯嗯对是
#include#include//b^2-4ac==0voidfun1(double&a,double&b,double&c,double&d){doubleans=-b/(2*a);printf(
试一下把各个参数的类型改为double,因为出现的除法要用实型,否则电脑会自动舍去小数部分!
#include#includevoidmain(){voidbig(floata,floatb,floatc);voidequality(floata,floatb,floatc);voidsmal
如上图,输入、输出的截图 var a,b,c,x,y,t:double; begin readln(a,b,c); t:=b*b-4*a*c; if t>0 then
#include#includevoidtwo(floata,floatb,floatc){floatx1=(-b+sqrt(b*b-4*a*c))/(2*a);floatx2=(-b-sqrt(b*
#include#includefloatp,q;voidm(inta,intb,intc,floatd){p=(-b+sqrt(d))/(2*a);q=(-b-sqrt(d))/(2*a);prin
求写大一的C语言程序:求方程ax^2+bx+c=0的根,用3个函数分别求当b^2-4ac大于0,等于0和小于0时的根,在主程序中输入a、b、c的值.请写大一的水平,自己先试试输出结果是否正确,非常紧急
#include#includeintf(inta,intb,intc,float*ans){\x09*ans=b*b-4*a*c;\x09if(*ans>0)\x09\x09return2;\x09
scanf语句错了!scanf("%a%b%c",&a,&b,&c);应该改为scanf("%f%f%f",&a,&b,&c);你接收到的数据根本就是错的,往下进行更无从谈起了!建议你看看这里:
#include\x09#include\x09usingnamespacestd;\x09floatx1,x2,disc,p,q;\x09intmain()\x09{voidgreater_than
#include#includevoidzero(floata,floatb){floatx1,x2;x1=(-b)/(2*a);x2=(-b)/(2*a);printf("%f,%f",x1,x2)
voidfangcheng(doublea,doubleb,doublec){doublex1,x2;doubledelta=b^2-4*a*c;if(delta>0){x1={-b+sqrt(b^2
这种返回方式,我没有用过,但是先以你的doublex这个函数做个比方doublex(doublex,doubley,doublez){doublex1,x2;x1=(-y-sqrt(pow(y,2)-
if(disc=0)改为if(disc==0)disc=0为赋值语句.在所有的调用函数里出现了disc,但disc没有计算且没有初始化,需重新计算吧另外建议printf("disc=%d",disc)
#include#include#includeintmain(){floata,b,c,l,t,x1,x2;printf("inputthreenumbers\n");scanf("%f%f%f",