项目24.3 一元二次方程全解
来源:互联网 发布:远程教育软件k6 编辑:程序博客网 时间:2024/05/22 03:18
任务和代码: 有一方程ax^2+bx+c=0,a,b,c的值由键盘输入,请编程序,打印出以下情况时方程的解。
(1) a=0,b≠0时, 解为-c/b
(2) a=0,b=0,c=0, 解为任意值
(3) a=0,b=0,c≠0, 无解
(4) a≠0,b^2-4ac≥0, 有两个实根
(1) a=0,b≠0时, 解为-c/b
(2) a=0,b=0,c=0, 解为任意值
(3) a=0,b=0,c≠0, 无解
(4) a≠0,b^2-4ac≥0, 有两个实根
(5) a≠0,b^2-4ac≤0, 有两个虚根
/*文件名:main.c作者:小风景完成日期:2015.9.11问题描述: 有一方程ax^2+bx+c=0,a,b,c的值由键盘输入,请编程序,打印出以下情况时方程的解。(1) a=0,b≠0时, 解为-c/b(2) a=0,b=0,c=0, 解为任意值(3) a=0,b=0,c≠0, 无解(4) a≠0,b^2-4ac≥0, 有两个实根(5) a≠0,b^2-4ac≤0, 有两个虚根程序输出:方程的解*/#include <stdio.h>#include <stdlib.h>#include <math.h>int main(){ float a,b,c,k1,k2,k3; printf("请输入a,b,c:"); scanf("%f %f %f",&a,&b,&c); k3 = b * b - 4 * a *c; if(a == 0) { if(b != 0) { printf("方程有一解为:%.3f",-c / b); } else if(c != 0) { printf("该方程无解!"); } else { printf("该方程解为任意值!"); } } else { if(k3 >= 0) { k1 = -b / (2 * a); k2 = sqrt(k3) / (2 * a); printf("该方程的解x1=%.3f\n",k1+k2); printf("该方程的解x2=%.3f\n",k1-k2); } else { k1 = -b / (2 * a); k2 = sqrt(-k3) / (2 * a); printf("该方程的解x1=%.3f+%.3fi\n",k1,k2); printf("该方程的解x2=%.3f+%.3fi\n",k1,k2); } } return 0;}
总结:这个程序重点在简洁的if语句,前面a == 0,b!=0 c==0 三个判断比较简洁的得到想要的结果,后面输出虚根是注意输出的方式,由于虚根带i,所以在输出时应该输出带i的表达式,这点需要注意。
---------------------------------------------------------------------------------------------------------------------------------------
让时间说真话,虽然我也害怕。
0 0
- 项目24.3 一元二次方程全解
- 第24讲-项目三:一元二次方程全解
- 第二十四讲项目3-一元二次方程全解
- 第二十四讲项目三 一元二次方程全解
- 第24课时,实践3,一元二次方程全解
- 一元二次方程解
- C++,解一元二次方程
- 解一元二次方程
- 二分法解一元二次方程
- 解一元二次方程
- 解一元二次方程
- 解一元二次方程
- 解一元二次方程
- 解一元二次方程
- 解一元二次方程
- 求一元二次方程解
- 解一元二次方程
- Python 解一元二次方程
- 01.C语言关键字、标识符和注释
- 地图的显示以及如何添加大头针
- iOS网络编程---根据URL下载网络文件的方法
- Swing
- Ubuntu下安装python
- 项目24.3 一元二次方程全解
- KMP算法(一)
- 修改mysql数据库,表,字段 的字符集。
- 随机梯度下降算法 matlab
- 02.C语言的数据、常量和变量
- 天声人語 20150929
- light oj 1281 - New Traffic System (最短路+dp思想)
- 深度优先搜索
- 2015年9月29笔试总结