【C语言程序设计——选择结构程序设计】求一元二次方程的根(头歌实践教学平台习题)【合集】

简介: 本任务要求根据求根公式计算并输出一元二次方程的两个实根,精确到小数点后两位。若方程无实根,则输出提示信息。主要内容包括:- **任务描述**:使用求根公式计算一元二次方程的实根。- **相关知识**:掌握 `sqrt()` 函数的基本使用方法,判断方程是否有实根。- **编程要求**:根据输入的系数,计算并输出方程的根或提示无实根。- **测试说明**:提供两组测试数据及预期输出,确保代码正确性。- **通关代码**:包含完整的 C 语言代码示例,实现上述功能。通过本任务,你将学会如何处理一元二次方程的求解问题,并熟悉 `sqrt()` 函数的使用。

目录😋

任务描述

相关知识

sqrt() 函数

编程要求

测试说明

通关代码

测试结果


任务描述

本关任务:根据求根公式 image.gif 编辑,计算并输出一元二次方程 image.gif 编辑的两个实根,要求精确道小数点后2位。要求方程系数从键盘输入。如果输入的系数不满足求实根要求,输出提示信息“此方程没有实根”。

相关知识

为了完成本关任务,你需要掌握:

  1. sqrt() 函数的基本使用方法
  2. 判断 image.gif 编辑是否成立,成立则按求根公式求两个实根,否则输出“此方程没有实根”。
  • sqrt() 函数

sqrt() 函数的作用是接收一个数值作为参数,并返回这个数值的算术平方根。它的参数通常要求是双精度浮点数类型(double 类型),相应地,它返回的结果也是双精度浮点数类型。例如,我们想要计算数字 9 的平方根,可以在 C 语言代码中这样写:

#include <stdio.h>
#include <math.h>
int main() {
    double num = 9.0;
    double result = sqrt(num);
    printf("数字 %.2lf 的平方根是 %.2lf\n", num, result);
    return 0;
}
image.gif

在上述代码示例中:

  • 首先通过 #include <stdio.h> 引入了标准输入输出头文件,这样就能使用 printf() 函数来进行结果的输出显示。
  • 接着使用 #include <math.h> 引入了包含 sqrt() 函数声明的数学头文件。
  • main 函数里,定义了一个双精度浮点数变量 num 并初始化为 9.0,这个变量就是我们要传递给 sqrt() 函数的参数,代表着我们想要计算平方根的那个数。
  • 然后调用 sqrt() 函数,将 num 作为参数传入,函数执行后返回的结果会被存储到另一个双精度浮点数变量 result 中。
  • 最后使用 printf() 函数将原始数字以及计算得到的平方根结果按照指定的格式(保留两位小数,通过 %.2lf 格式化控制符实现)输出到控制台,方便我们查看计算的结果。

需要注意的是,如果我们传递给 sqrt() 函数的参数是一个负数,由于在实数范围内负数是没有算术平方根的(在复数领域才有相关定义,但 sqrt() 函数默认处理的是实数情况),程序运行时可能会出现错误或者返回一个特殊的值(具体取决于编译器和运行环境)。所以在实际使用中,要确保传递给 sqrt() 函数的参数是非负实数,这样才能得到符合预期的、正确的平方根计算结果。

编程要求

根据提示,在右侧编辑器 Begin-End 之间补充代码,计算并输出对应二次方程的根。

测试说明

平台会对你编写的代码进行测试:

测试输入:

5 2 4

预期输出:

此方程没有实根!

测试输入:

2 6 3

预期输出:

x1=-0.63,x2=-2.37

开始你的任务吧,祝你成功!


通关代码

#include "stdio.h"
#include "math.h" 
int main()
{
    double a,b,c;
    double delta,x1,x2; 
    //printf("请输入方程系数:");
    /*********Begin*********/
     scanf("%lf %lf %lf", &a, &b, &c);
     delta = b * b - 4 * a * c;
     if (delta < 0) {
         printf("此方程没有实根!\n");
     }else {
         x1 = (-b + sqrt(delta)) / (2 * a);
         x2 = (-b - sqrt(delta)) / (2 * a);
         printf("x1=%.2lf,x2=%.2lf\n", x1, x2);
     }    
     return 0;
    
      
   /*********End**********/ 
}

image.gif


测试结果

image.gif

image.gif

目录
相关文章
|
存储 人工智能 算法
【AcWing算法基础课】第四章 数学知识(未完待续)(3)
根据下面公式来预处理出等式右边的组合数的值,那么等式左边就可以用等式右边已经算过的值来进行计算(有点像dp)。
84 0
|
人工智能 算法 BI
【AcWing算法基础课】第四章 数学知识(未完待续)(2)
从2到n枚举每个数,删掉其所有的倍数,枚举完之后,没有被删掉的数为质数。
118 0
|
18小时前
|
存储 算法 C语言
【C语言程序设计——函数】素数判定(头歌实践教学平台习题)【合集】
本内容介绍了编写一个判断素数的子函数的任务,涵盖循环控制与跳转语句、算术运算符(%)、以及素数的概念。任务要求在主函数中输入整数并输出是否为素数的信息。相关知识包括 `for` 和 `while` 循环、`break` 和 `continue` 语句、取余运算符 `%` 的使用及素数定义、分布规律和应用场景。编程要求根据提示补充代码,测试说明提供了输入输出示例,最后给出通关代码和测试结果。 任务核心:编写判断素数的子函数并在主函数中调用,涉及循环结构和条件判断。
32 23
|
18小时前
|
C语言
【C语言程序设计——循环程序设计】枚举法换硬币(头歌实践教学平台习题)【合集】
本文档介绍了编程任务的详细内容,旨在运用枚举法求解硬币等额 - 循环控制语句(`for`、`while`)及跳转语句(`break`、`continue`)的使用。 - 循环嵌套语句的基本概念和应用,如双重`for`循环、`while`嵌套等。 3. **编程要求**:根据提示在指定区域内补充代码。 4. **测试说明**:平台将对编写的代码进行测试,并给出预期输出结果。 5. **通关代码**:提供完整的代码示例,帮助理解并完成任务。 6. **测试结果**:展示代码运行后的实际输出,验证正确性。 文档结构清晰,逐步引导读者掌握循环结构与嵌套的应用,最终实现硬币兑换的程序设计。
31 19
|
15小时前
|
C语言
【C语言程序设计——入门】基本数据类型与表达式(头歌实践教学平台习题)【合集】
这份文档详细介绍了编程任务的多个关卡,涵盖C语言的基础知识和应用。主要内容包括: 1. **目录**:列出所有关卡,如`print函数操作`、`转义字符使用`、`数的向上取整`等。 2. **各关卡的任务描述**:明确每关的具体编程任务,例如使用`printf`函数输出特定字符串、实现向上取整功能等。 3. **相关知识**:提供完成任务所需的背景知识,如格式化输出、算术运算符、关系运算符等。 4. **编程要求**:给出具体的代码编写提示。 5. **测试说明**:包含预期输入输出,帮助验证程序正确性。 6. 文档通过逐步引导学习者掌握C语言的基本语法和常用函数,适合初学者练习编程技能。
13 1
|
16小时前
|
存储 算法 安全
【C语言程序设计——选择结构程序设计】求阶跃函数的值(头歌实践教学平台习题)【合集】
本任务要求输入x的值,计算并输出特定阶跃函数的结果。主要内容包括: 1. **选择结构基本概念**:介绍if、if-else、switch语句。 2. **主要语句类型**:详细解释if、if-else、switch语句的使用方法。 3. **跃迁函数中变量的取值范围**:说明如何根据条件判断变量范围。 4. **计算阶跃函数的值**:通过示例展示如何根据给定条件计算函数值。 编程要求:在右侧编辑器Begin-End之间补充代码,实现阶跃函数的计算和输出。测试说明提供了多个输入及其预期输出,确保代码正确性。最后提供通关代码和测试结果,帮助理解整个过程。
13 0
|
15小时前
|
C语言
【C语言程序设计——循环程序设计】鸡兔同笼问题(头歌实践教学平台习题)【合集】
本教程介绍了循环控制和跳转语句的使用,包括 `for`、`while` 和 `do-while` 循环,以及 `break` 和 `continue` 语句。通过示例代码详细讲解了这些语句的应用场景,并展示了如何使用循环嵌套解决复杂问题,如计算最大公因数和模拟游戏关卡选择。最后,通过鸡兔同笼问题演示了穷举法编程的实际应用。文中还提供了编程要求、测试说明及通关代码,帮助读者掌握相关知识并完成任务。 任务描述:根据给定条件,编写程序计算鸡和兔的数量。鸡有1个头2只脚,兔子有1个头4只脚。
19 5
|
15小时前
|
小程序 C语言
【C语言程序设计——基础】顺序结构程序设计(头歌实践教学平台习题)【合集】
目录 任务描述 相关知识 编程要求 测试说明 我的通关代码: 测试结果: 任务描述 相关知识 编程编写一个程序,从键盘输入3个变量的值,例如a=5,b=6,c=7,然后将3个变量的值进行交换,使得a=6,b=7,c=5。面积=sqrt(s(s−a)(s−b)(s−c)),s=(a+b+c)/2。使用输入函数获取半径,格式指示符与数据类型一致,实验一下,不一致会如何。根据提示,在右侧编辑器补充代码,计算并输出圆的周长和面积。
19 10
|
14小时前
|
算法 C语言
【C语言程序设计——循环程序设计】求解最大公约数(头歌实践教学平台习题)【合集】
采用欧几里得算法(EuclideanAlgorithm)求解两个正整数的最大公约数。的最大公约数,然后检查最大公约数是否大于1。如果是,就返回1,表示。根据提示,在右侧编辑器Begin--End之间的区域内补充必要的代码。作为新的参数传递进去。这个递归过程会不断进行,直到。有除1以外的公约数;变为0,此时就找到了最大公约数。开始你的任务吧,祝你成功!是否为0,如果是,那么。就是最大公约数,直接返回。
30 18
|
14小时前
|
存储 安全 C语言
【C语言程序设计——选择结构程序设计】预测你的身高(头歌实践教学平台习题)【合集】
分支的语句,这可能不是预期的行为,这种现象被称为“case穿透”,在某些特定情况下可以利用这一特性来简化代码,但在大多数情况下,需要谨慎使用。编写一个程序,该程序需输入个人数据,进而预测其成年后的身高。根据提示,在右侧编辑器补充代码,计算并输出最终预测的身高。分支下的语句,提示用户输入无效。常量的值必须是唯一的,且在同一个。语句的作用至关重要,如果遗漏。开始你的任务吧,祝你成功!,程序将会继续执行下一个。常量都不匹配,就会执行。来确保程序的正确性。
23 10

热门文章

最新文章

下一篇
开通oss服务