C语言,期末救急输入三个系数,判断一元二次方程的解(代码逐行逐句的解释,看到最后有知识的总结)
1,导语
对于这种C语言方程问题,稍微接触过C语言都知道,然而老师上课可能是这样子的
然而当你跟着老师打完代码后,在理想状态下你会得到这样
嗯,退坑的心都有了,老实说上课老师讲的我也不懂,但这些东西对于我们小白来说很难一下子汲取到那么多知识,所以我用我的浅薄的知识将代码逐行逐句的解释,并且在后面有知识的总结
2,对应代码
#include <stdio.h>
#include <math.h>//因为后面要引用数学公式,故要利用此头文件
void main()
{float x1, x2, a, b, c, delta, shibu, xubu;/*定义几个变量为浮点类型,后面的三个分别是德尔塔,实部,虚部*/printf("请输入三个值作为方程系数:\n");//C语言打印的基本格式printf("xx\n");其中\n为转行scanf_s("%f,%f,%f", &a, &b, &c);/*C语言中获取外界输入(scanf_s这里的_s因为本人用的是vs内部有些bug所以自加防止报错)*/if (fabs(a) <= 1e-6)//下文有解释printf("这不是二次方程\n");else{delta = b * b - 4 * a * c;//德尔塔的数学格式if (fabs(delta) <= 1e-6)printf("结果为两个相同的实数根:%8.4f", -b / (2 * a));/*%8.4f意思是打印8个宽度再加4位小数*/else if (delta > 1e-6){x1 = (-b + sqrt(delta)) / (2 * a);//sqrt的意思为平方根号x2 = (-b - sqrt(delta)) / (2 * a);printf("结果有两个不同的实数根:%8.4f and %8.4f\n", x1, x2);}else{shibu = -b / (2 * a);xubu = sqrt(-delta) / (2 * a);printf("结果为两个共轭复根:\n");printf("%8.4f+%8.4fi\n", shibu,xubu);//复根公式下面会给printf("%8.4f-%8.4fi\n" ,shibu,xubu);}}}
3,对应公式
4,对应知识点
1,
fabs()函数是返回某一个值的绝对值的一个函数
例如,fabs(a)就是返回a的绝对值
1e-6表示的是浮点数。也就是1*10的-6次方。
而之所以这么写其意义等价于a==0(对于为什么不直接写我的想法是因为引用了math.h的头文件)对此欢迎各位大佬解答
总之这是一个很棒的题,你能学到if语句嵌套,数学公式的使用等等况且这类题很容易变成期末考试的题目,最后让我们一起加油吧
目录
1,导语
2,对应代码
3,对应公式
4,对应知识点
C语言,期末救急输入三个系数,判断一元二次方程的解(代码逐行逐句的解释,看到最后有知识的总结)相关推荐
- 习题:输入abc的值求一元二次方程的解
# include <stdio.h># include <math.h> int main(void){ int a, b, c; float x1,x2; begin: p ...
- C语言学习之输入任意年份,判断是否为闰年
C语言学习之输入任意年份,判断是否为闰年 #include <stdio.h> int main(){int year; //定义变量printf("请输入任意年份:\n&quo ...
- 用python编程输入三角形的三条边判断是否构成三角形_vb三角形编程输入三条边,判断能否构成三角形.看我的编程是否有问题,...
题目: vb三角形编程输入三条边,判断能否构成三角形.看我的编程是否有问题, Dim A=Val(InputBox("请输入a") ) B=Val(InputBox("请 ...
- Java输入三条边判断是否能组成三角形,若能构成则输出什么三角形
问题 输入三条边判断是否能组成三角形,若能构成则输出什么三角形 思路 任意两条边之和大于第三条边,构成三角形 三角形两条边相等,等腰三角形 三角形三边相等,等边三角形 代码实现 Scanner sca ...
- 输入三个数,判断能否以这三个数构成一个三角形,若能则输出所构成三角形的类别(等边、等腰、直角或斜三角形)
输入三个数,判断能否以这三个数构成一个三角形,若能则输出所构成三角形的类别(等边.等腰.直角或斜三角形) #include<stdio.h> int main() {int a,b,c; ...
- C语言 求一元二次方程的解,考虑所有情况
求一元二次方程的解,考虑所有情况 假设:ax²+bx+c=0 要求输入a,b,c的值,判断并求出方程的解. 有以下几种情况: 1.a = 0 (1)b = 0 c = 0时,x可以是任意数: c != ...
- 【C语言】计算一元二次方程的解
计算一元二次方程的解 #include<stdio.h> #include<math.h> void main() {float a,b,c,x1,x2;printf(&quo ...
- 三门课成绩总分用c语言,编写一个C语言程序:输入三个学生三门课的成绩,计算每个学生的总分和平均成绩...
C语言实现如下: #include void main(){float a[3][3],sum[3];int i;for(i=0;i 由热心网友提供的答案1: #include"stdio. ...
- C语言输入三个数字判断大小
int a,b,c,max; printf("输入三个数: \n"); scanf("%d, %d, %d",&a,&b,&c); ma ...
最新文章
- 切尔西携手YouTube 英超第一家共享视频球队诞生
- Spring boot、微服务、OAuth、OpenID的爱恨情仇!
- 重磅!Nature子刊:利用GAN来​“深度伪造大脑数据”可以改善残疾人的脑机接口...
- 机器学习(MACHINE LEARNING)MATLAB之surf()函数
- 007_Maven依赖管理
- 找新房子需要考虑的因素
- 洛谷P1525 关押罪犯
- CString和string的互相转换
- 用Java写一个小游戏
- linux修改u盘mbr,远景论坛U盘版 完美 4G/8G/16G WINPE+LINUXPE+MACPE+10.9正式版MBR安装版 制作超简单...
- matlab检验相关性显著性检验,基于matlab的栅格数据相关分析及显著性检验
- 电容能抗多大的ESD?
- linux top命令看到的实存(RES)与虚存(VIRT)分析
- 使用ActiveX实现的Web自定义查询-万能查询
- 谷歌表格删除空白表格_带有Google表格的令人印象深刻的仪表板
- 谷歌账户剩余余额如何退回。
- python快速生成列表_python_字符串快速生成列表的绝招
- yoyo-rebecca
- 计算机网络之应用层与传输层
- 从0到10亿,微信后台架构及基础设施设计与实践!
热门文章
- 微信小程序合法域名检验实测成功
- 工作区域(或内部表)“LT_RKWA“不是扁平的,或者包含参考或内部表作为组件
- linux未被识别crond服务,crond服务不能启动
- 【论文写作】如何表示比较关系, compare to OR compare with?
- mysql gh 划线_MySQL在线DDL gh-ost 使用说明
- linux系统中的进程调度采用( ),Linux系统中的进程调度.ppt
- XML概述、语法及常用操作
- 使用okhttp3,提示【clientBuilder.sslSocketFactory(SSLSocketFactory) not supported on JDK 9+】
- 程序性能的初步优化与分析(以 C++ 为例)
- php 网页自适应屏幕,HTML_如何让网页自动适应显示器不同的“分辨率”,如何让网页自动适应显示器不 - phpStudy...