题目分析
首先要知道一元二次方程的解如何求解。当a等于0时,此方程就不是一个一元二次方程而变成了一元一次方程可以直接求解但题目中要求输出"Not quadratic equation"这里用if判断既可。
代码实现
#include<stdio.h>
int main()
{
float a,b,c;
float tmp;
while(scanf("%f %f %f",&a,&b,&c)!=EOF)
{
if(a==0)
{
printf("Not quadratic equation");
}
else
{
tmp=b*b-4*c*a;
if(tmp==0)
{
printf("x1=x2=%.2f\n",-b/(2*a));
}
if(tmp>0)
{
printf("x1=%.2f;x2=%.2f\n",(-b-sqrt(tmp))/(2*a),(-b+sqrt(tmp))/(2*a));
}
if(tmp<0)
{
printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n",-b/(2*a),sqrt(-tmp)/(2*a),-b/(2*a),sqrt(-tmp)/(2*a));
}
}
}
return 0;
题目分析
三角形的判断条件:任意两边之和大于第三边首先进行if语句的判断如果为真继续假则直接输出题目要求即可。若为真则再次判断两边和三边是否相等如果前者相等输出等腰后者相等输出等边。
代码实现
#include<stdio.h>
int main()
{
int a, b, c;
while (scanf("%d %d %d", &a, &b, &c) != EOF)
{
if (a + b > c && a + c > b && b + c > a)
{
if (a == b && b == c)
{
printf("Equilateral triangle!\n");
}
else if (a == b || b == c || c == a)
{
printf("Isosceles triangle!\n");
}
else
{
printf("Ordinary triangle!");
}
}
else
{
printf("Not a triangle!");
}
}
return 0;
}