(函数)求一元二次方程的根(C语言)

一、运行结果;

二、源代码;

cs 复制代码
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
# include <math.h>

//声明函数;
//判断条件等于0时;
void zeor(double a, double b);

//判断条件大于0时;
void bigzeor(double p, double q);

//判断条件小于0时;
void smallzeor();

int main()
{
	//初始化变量值;
	double a, b, c, p, q, judge;

	//获取用户输入数据;
	printf("请输入a, b, c的值:");
	scanf("%lf %lf %lf", &a, &b, &c);

	//运算;
	judge = b * b - 4 * a * c;
	p = -b / (2.0 * a);
	q = sqrt(judge) / (2.0 * a);

	//判断;
	if (judge >= 0)
	{
		if (judge = 0)
		{
			//调用函数;
			zeor(a, b);
		}
		else
		{
			//调用函数;
			bigzeor(p, q);
		}
	}
	else
	{
		//调用函数;
		smallzeor();
	}

	return 0;
}

//实现zeor函数;
void zeor(double a, double b)
{
	//初始换变量值;
	double x1 = 0;
	double x2 = 0;

	//运算;
	x1 = x2 = (-2.0 * a) / b;

	//输出结果;
	printf("函数的根为:x1=x2=%.2f\n", x1);
	
}

//实现bigzeor函数;
void bigzeor(double p, double q)
{
	//初始换变量值;
	double x1 = 0;
	double x2 = 0;

	//运算;
	x1 = p + q;
	x2 = p - q;

	//输出结果;
	printf("函数的根为:x1=%.2f, x2=%.2f\n", x1, x2);

}

//实现smallzeor函数;
void smallzeor()
{
	//输出结果;
	printf("函数无根!\n");

}
相关推荐
rit8432499几秒前
瑞利信道下PSK水声通信系统均衡技术
算法
qq_40170041几秒前
Qt键盘组合
开发语言·qt
lkbhua莱克瓦2412 分钟前
Java入门——Java跨平台的原理
java·开发语言·笔记·github
song1502653729812 分钟前
PLC控制编程,触摸屏程序开发设计解析
开发语言·javascript·ecmascript
ValhallaCoder15 分钟前
Day33-动态规划
数据结构·python·算法·动态规划
Alaso_shuang20 分钟前
Raylib贴图
c语言·图形渲染·贴图·raylib库·c语言项目
不穿格子的程序员29 分钟前
从零开始刷算法-二分-搜索插入位置
算法·二分查找
Charles_go36 分钟前
C#7、如何处理异常
开发语言·c#
我曾遇到一束光39 分钟前
Springboot3.X+security6.5+jdk21
java·开发语言
Tipriest_43 分钟前
C++ 图形中间件库Magnum详细介绍
开发语言·c++·magnum