阅读以下说明和C函数,填充(1)~(5)的空缺,将解答填入答题纸的对应栏内。【说明】编写程序,对于从键盘输入的3个实数a、b、c,计算实系数一元二次方程的根并输出所求的根。 【函数】 #include<stdio.h> #include<stdlib.h> #include<math.h> Main() { float a,b,c,delta,x1,x2; printf("Enter a,b,c"); scanf("%f%f%f",&a,&b,&c)); if((1)) if((2)) printf("Input error!\n"); else printf("The single root is %f\n",(3)); else { delta=b*b-4*a*c; if((4)) { x1=(-b+sqrt(delta))/(2*a); x2=(-b-sqrt(delta))/(2*a); printf("x1=%8.2f\nx2=%8.2f\n",x1,x2,); } else if(delta==0) printf("x1=x2=%8.2f\n",(5)); else { Printf("z2=%8.2f+%8.2f*i\n",-b/(2*a),sqrt(-delta)/)(2*abs(a))); Printf("z2=%8.2f-%8.2f*i\n",-b/(2*a),sqrt(-delta)/(2*abs(a))); } }}
正确答案及解析
正确答案
解析
(1)a==0
(2)b==0
(3)-c/b (4)delta>0(或b*b-4*a*c>0)
(5)-b/(2*a) (或-b/2/a)
【解析】
对于如何求出一元二次方程的根,是解决这个题目的关键。首先我们来回忆一下数学中求一元二次方程根的方法。在数学中求一元二次方程根的步骤如下。第一步是确定方程是否为一元二次方程,这需要判断二次方系数和一次方系数是否为0,如果都为0,则方程有错。如果只是二次方系数为零,则方程为一元一次方程,方程有一个解。第二步是用Δ=b*b-4*a*c与0的关系来判断解的个数,如果Δ>0,方程有2个不同的解;如果Δ=0,方程有一个解;而Δ<0时,方程无解。 第三步才是求解。 现在我们来看主函数,在主函数中,首先声明了一些实数变量,其中变量a、b、c分别存放我们从键盘输入的3个实数,而detal中存放的是Δ的值,x1、x2中存放方程根的值。接下来是从键盘输入3个值,作为一元二次方程的系数,在对一元二次方程求解以前我们需要考虑系数值为0的情况,因此,第1空应该填“a==0”,第2空应该填“b==0”。 在a等于0而b不等于0的情况下,方程为一元一次方程,可以直接用-c/b求得其解,第3空明显是要输出这个解。再往下看,程序计算了Δ的值,那么接下来应该是判断Δ与0的关系了,从程序中可以看出,方程在第4空的条件下有两个解,那么第4空应该填“delta>0”。而第5空是在delta=0的条件下方程的解,因此第5空应该填“-b/(2*a)”。
包含此试题的试卷
你可能感兴趣的试题
一台主机的IP地址为202.123.25.36,掩码为255.255.254.0。如果该主机需要在该网络进行直接广播,那么它应该使用的目的地址为( )
-
- A.202.123.25.0
- B.202.123.25.255
- C.202.123.24.0
- D.202.123.24.255
- 查看答案
在计算机系统的日常维护工作中,应当注意硬盘工作时不能__(2)__。另外,需要防范病毒,而__(3)__是不会被病毒感觉的。
-
- A.电子邮件
- B.硬盘
- C.U盘
- D.ROM
- 查看答案
有 4 个 IP 地址:201.117.15.254、201.117.17.01、201.117.24.5 和 201.117.29.3,如果子网掩码为 255.255.248.0,则这 4 个地址分别属于3个子网;其中属于同一个子网的是()
-
- A.201.117.15.254 和 201.117.17.01
- B.201.117.17.01 和 201.117.24.5
- C.201.117.15.254 和 201.117.29.3
- D.201.117.24.5 和 201.117.29.3
- 查看答案
在异步通信中,每个字符包含1位起始位、7位数据位、1位奇偶位和1位终止位,每秒钟传送200个字符,采用4相位调制,则码元速率为()。
-
- A.50波特
- B.500波特
- C.550波特
- D.1000波特
- 查看答案
在 Windows 中,运行( )命令得到下图所示结果。以下关于该结果的叙述中,错误的是( )。
Pinging 59.74.111.8 with 32 bytes of data:
Reply from 59.74.111.8: bytes=32 time=3ms TTL=60
Reply from 59.74.111.8: bytes=32 time=5ms TTL=60
Reply from 59.74.111.8: bytes=32 time=3ms TTL=60
Reply from 59.74.111.8: bytes=32 time=5ms TTL=60
Ping statistics for 59.74.111.8:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 3ms, Maximum = 5ms, Average = 4ms
-
- A.该命令使得本地主机向目标主机发送了 4 个数据包
- B.本地主机成功收到了目标主机返回的 4 个数据包
- C.本地主机与目标主机连接正常
- D.该命令用于查看目标主机的 IP 地址
- 查看答案