输入任意三个互不相等的整数作为一元二次方程ax2+bx+c-0的系数,并以最大的值作为a,第二大的3值作为b,最小值作为系数c,判断此方程是否有实根,若有则输出yes,否则输出n0。 C语言
时间: 2024-11-30 08:20:44 浏览: 19
c语言+从键盘输入10个无序的整数,存放在数组中,找出数组中最大值与最小值的所在的位置,并输出数组元素所在的位置与数组元素的值
5星 · 资源好评率100%
在C语言中,你可以通过计算判别式来判断一元二次方程是否有实根。判别式D = b^2 - 4ac,如果D > 0,则有两个不同的实根;D = 0,有唯一实根;D < 0,无实根。
以下是一个简单的示例程序,它首先获取用户输入的三个整数,然后按照题目要求设置a、b和c,接着计算判别式并判断:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int a, b, c;
// 获取用户输入
printf("请输入三个互不相等的整数:");
scanf("%d %d %d", &a, &b, &c);
// 按照题设重新排列系数
if (a <= b && b <= c) {
int temp = a;
a = b;
b = temp;
}
if (a <= c) {
int temp = a;
a = c;
c = temp;
}
// 计算判别式
int discriminant = b * b - 4 * a * c;
// 判断并输出结果
if (discriminant >= 0) {
printf("yes\n");
} else {
printf("no\n");
}
return 0;
}
```
当你运行这个程序,它会要求输入三个数字,然后检查它们是否满足题目的条件,最后根据判别式的正负来判断方程的根是否存在。
阅读全文