第七章:7.2求方程a*x*x+b*x+c=0的根,用3个函数,分别求当:b*b-4*a*c大于0、等于0和小于0时的根并输出结果。从主函数输入a、b、c的值

//求方程a*x*x+b*x+c=0的根,用3个函数,分别求当:b*b-4*a*c大于0、等于0和小于0时的根并输出结果。

//从主函数输入a、b、c的值

cs 复制代码
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
void s1(float a, float b, float c)
{
	float x1, x2;
	float tmp = b * b - 4 * a * c;
	x1 = (-b + sqrt(tmp)) / 2 * a;
	x2 = (-b - sqrt(tmp)) / 2 * a;
	printf("x1=%.2f\nx2=%.2f\n", x1, x2);
}
void s2(float a, float b, float c)
{
	float x1, x2;
	float tmp = b * b - 4 * a * c;
	x1 = (-b ) / 2 * a;
	x2 = (-b ) / 2 * a;
	printf("x1=%.2f\nx2=%.2f\n", x1, x2);
}
void s3(float a, float b, float c)
{
	float x1, x2;
	float p, q;
	float tmp = b * b - 4 * a * c;
	p = (-b) / 2 * a;
	q = (sqrt(-tmp)) / 2 * a;
	printf("x1=%.2f+%.2fi\nx2=%.2f-%.2fi\n", p, q, p, q);
}
int main()
{
	float a = 0.0, b = 0.0, c = 0.0;
	printf("请输入a的值:");
	scanf("%f", &a);
	printf("请输入b的值:");
	scanf("%f", &b);
	printf("请输入c的值:");
	scanf("%f", &c);
	if (b * b - 4 * a * c > 0)
	{
		s1(a, b, c);
	}
	else if (b * b - 4 * a * c == 0) 
	{
		s2(a, b, c);
	}
	else
	{
		s3(a, b, c);
	}
	return 0;
}

输出结果:

1.当b*b-4*a*c=0时

2.当b*b-4*a*c<0时

3.当b*b-4*a*c>0时

相关推荐
灵感__idea1 天前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
Wect2 天前
LeetCode 130. 被围绕的区域:两种解法详解(BFS/DFS)
前端·算法·typescript
NAGNIP2 天前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
Scout-leaf3 天前
WPF新手村教程(三)—— 路由事件
c#·wpf
颜酱3 天前
单调栈:从模板到实战
javascript·后端·算法
用户298698530143 天前
程序员效率工具:Spire.Doc如何助你一键搞定Word表格排版
后端·c#·.net
CoovallyAIHub3 天前
仿生学突破:SILD模型如何让无人机在电力线迷宫中发现“隐形威胁”
深度学习·算法·计算机视觉
CoovallyAIHub3 天前
从春晚机器人到零样本革命:YOLO26-Pose姿态估计实战指南
深度学习·算法·计算机视觉
CoovallyAIHub3 天前
Le-DETR:省80%预训练数据,这个实时检测Transformer刷新SOTA|Georgia Tech & 北交大
深度学习·算法·计算机视觉
CoovallyAIHub3 天前
强化学习凭什么比监督学习更聪明?RL的“聪明”并非来自算法,而是因为它学会了“挑食”
深度学习·算法·计算机视觉