、请同学们自己根据分析写出完整的程序段,并编译、运行、查看结果。 从键盘上输入三个实数,它们分别代表三条线段的长度,请写一个判断这三条线段所组成的三角形属于什么类型(不等边,等腰,等边或不构成三角形)的 C 程序;如果能构成三角形,求出三角形的面积(取小数2位)
时间: 2024-05-15 15:20:05 浏览: 25
```
#include <stdio.h>
#include <math.h>
int main()
{
float a, b, c;
float p, s;
printf("请输入三条线段的长度:\n");
scanf("%f %f %f", &a, &b, &c);
if(a+b>c && a+c>b && b+c>a) // 判断是否能构成三角形
{
if(a==b && b==c) // 判断是否为等边三角形
printf("该三角形为等边三角形\n");
else if(a==b || a==c || b==c) // 判断是否为等腰三角形
printf("该三角形为等腰三角形\n");
else // 既非等边三角形,也非等腰三角形,则为不等边三角形
printf("该三角形为不等边三角形\n");
// 计算三角形的面积
p = (a+b+c)/2;
s = sqrt(p*(p-a)*(p-b)*(p-c));
printf("该三角形的面积为:%.2f\n", s);
}
else // 不能构成三角形
printf("这三条线段不能构成三角形\n");
return 0;
}
```
编译运行后,输入三条线段的长度,程序会输出该三角形的类型以及面积,或者提示无法构成三角形。
相关问题
请同学们自己根据分析写出完整的程序段,并编译、运行、查看结果。 从键盘上输入三个实数,它们分别代表三条线段的长度,请写一个判断这三条线段所组成的三角形属于什么类型(不等边,等腰,等边或不构成三角形)的 C 程序;如果能构成三角形,求出三角形的面积(取小数2位)。
抱歉,我可以回答这个问题。以下是该程序的代码段:
```
#include <stdio.h>
#include <math.h>
int main() {
float a, b, c;
float p, area;
printf("请输入三个实数,分别代表三条线段的长度:");
scanf("%f %f %f", &a, &b, &c);
if (a + b <= c || a + c <= b || b + c <= a) {
printf("三条线段无法构成三角形\n");
} else if (a == b && b == c) {
printf("三角形为等边三角形\n");
area = sqrt(3) / 4 * pow(a, 2);
printf("三角形的面积为:%.2f\n", area);
} else if (a == b || a == c || b == c) {
printf("三角形为等腰三角形\n");
p = (a + b + c) / 2; //半周长
area = sqrt(p * (p - a) * (p - b) * (p - c));
printf("三角形的面积为:%.2f\n", area);
} else {
printf("三角形为不等边三角形\n");
p = (a + b + c) / 2; //半周长
area = sqrt(p * (p - a) * (p - b) * (p - c));
printf("三角形的面积为:%.2f\n", area);
}
return 0;
}
```
编译运行后,输入三个实数,程序会输出三角形的类型和面积(如果能构成三角形)。如果三条线段无法构成三角形,则输出“三条线段无法构成三角形”。
编译从键盘输入三个整数,找出最大数并输出
以下是可以用 C 语言编写的程序,可以实现从键盘输入三个整数,找出最大数并输出:
```c
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个整数:\n");
scanf("%d%d%d", &a, &b, &c);
int max = a;
if (b > max) {
max = b;
}
if (c > max) {
max = c;
}
printf("最大数是:%d\n", max);
return 0;
}
```
当你输入三个整数后,程序会输出其中的最大数。