首先你已经很清楚的说明了你这个程序是用C语言写二次函数的,而当a=0时,就不是二次函数了,应该按照一次函数来进行计算,否则 一个数除以0就没有意义了.~
#include stdio.h
#include stdlib.h
#include math.h
int main()
{
float a,b,c;
printf("input number a=:");
scanf("%f",a);
printf("input number b=:");
scanf("%f",b);
printf("input number c=:");
scanf("%f",c);
if(a==0)
printf("一根:%f\n",c*(-1)/b);
else if(a==0b==0)
printf("无意义!");
else
if(m0)
printf("两根\n");
}
else if(m==0)
printf("无实根\n");
return 0;
c语言中一个完整的函数由函数首部和函数体构成,而且定义函数时两者都是必不可少的.
函数定义的一般形式如下:
类型标识符
函数名(形参表列)
//
这是函数首部
以下{
}内的是函数体
说明部分
执行部分
举例说明如下:
定义一个不带返回值的函数
函数功能:输出形参的值
void
fun(int
a,
int
b)
printf("%d,
%d\n",
b);
定义一个带返回值的函数
return
ab
a
:
b;
这个简单啊
#includestdio.h
#includemath.h
main()
double a,b,c,w;
printf("请输入三个数(方程的系数),中间用空格分开\n");
scanf("%lf%lf%lf",a,b,c);
if (w0)printf("方程无解\n");
我已经按你的意思修改了,也运行出来了,希望对你有帮助,代码附带在下面:
void main()
void situ1(float a,float b,float c);
float x,a,b,c;
scanf("%f%f%f",a,b,c);
if (a==0)
x=-c/b;
if (t0)
situ1(a,b,c);
else if(t==0)
void situ1(float a,float b,float c)
printf("没有实根\n");
我在c++里做了一个测试,程序如下:
int max(int x,int y){return x+y;}
int max(int x,int y,int z){return x+y+z;}
如果定义别的名字相同的函数,可以把它们的参数设置成不同的,否则会出现二义性
if(m=0a!=0){
if(m0){
printf("x1=%f\n",x1);
printf("一根\n");
if(a=0 b!=0) printf("根是x=-c/b");
if(a=0b=0) printf("为常函数");
if(a!=0) printf("无根\n");
system("PAUSE");
return 0; }
以上就是土嘎嘎小编为大家整理的C语言中如何定义二次函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!