c语言老谭书上的例题帮我分析一下吧

来源:百度知道 编辑:UC知道 时间:2024/06/03 18:08:17
第2版本p101的例题5.6
条件1 a=0不是二次方程
条件2 b*b-4*a*c=0有2个相等的实跟
条件3 b*b-4*a*c>0有2个不相等的跟
条件4 b*b-4*a*c<0有两个共?复根 哪个字不认识 这个条件也不知道是什么意思
他给的答案是
#include<math.h>
main()
{float a,b,c,disc,x1,x2,realpart,inagpart;
scanf("%f,%f,%f",&a&b&c);
printf("THE equation");
if(fabs(a)<=1e-6) \*这句就不明白哪个1e 也不知道是1还是l*\
printf("is not a quadratic\n");
else
{disc=b*b-4*a*c;
if(fabs(disc)<=1e-6)
printf("has two equal roots :%8.4f\n",-b/(2*a);
else if (disc>1e-6)
x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
print("has distinct real roots:%8.4f and %8.4\n",x1,x2);
}
else
{realpart=-b/(2*a);
imagepart=sqrt(-disk)/(2*a);
printf("has complex roots:\n");
printf("%8.4f+%8.4fi\n,realpart,imagpart);
printf("%8.4f-%8.4fi\n,realpart,imagpar

我是4楼 针对楼主的补充再加几句~~~

学编程是不需要背单词的 就是你说的函数什么的也不是要背的 函数都是实现具

体功能的 知道这个函数的作用你就会用 靠背函数的话你是学不好语言的而且函

数你也不可能记的完。

但这并不是说英语不重要 如果你只是想把简单的C的语法啊什么的会用比如就只学会谭浩强的那本书的话 我可以确切的说 你完全不用管什么英语!

但是如果你想更进一步的学习C 让C真正能够写出有作用的程序来,能看懂英语那是必不可少的 比如windows编程里MSDN都是英文的 看懂它很重要 还要一些底层开发比如嵌入式方面多用C 而这方面很多的书籍很多的资料是英文的 所以能看懂英文资料真的是相当重要 这里你不一定要去刻意的及很多单词 因为如果你看多了 你会发现那些英语你看了会大概知道他是什么意思 但你并不一定确切知道每个单词的意思~~

看你自己想学到那个层次了~~ 希望能对你有点帮助 呵呵~~

以下是原先回答:

======================================================================

你不认识的那个应该是“共轭”把 就是说复数里的实部一样虚部相反的两个根

比如 3+5i 和 3-5i

这些都是解方程组的判定条件啊

在初中不是学过的吗?b*b-4*a*c是判断方程有无根或有无实根的条件

这个条件就是开头列的条件 大于0两个实根 小于0两个虚根 =0两个相等的实根

如果a=0则不是一个二次方程

==================================================

if(fabs(a)<=1e-6) \*这句就不明白哪个1e 也不知道是1还是l*\

这里的1e是C语言里用科学计数法来表示数字

1e-6就是1*(10的负六次方)的意思