/*
作品名称:一元二次方程计算器
制作者:祭夜ゐ血泣
目的:计算一元二次方程
功能:能更加便捷的计算一元二次方程
时间:开始制作:2016年2月5日晚(初步制作完成)
修复bug :2016年2月14日晚---15日早
*/
# include <stdio.h>
# include <math.h>
# include <stdlib.h>
int main(void)
{
int a=1;
int b=4;
int c=2;
int q;
int e;
char ch;
printf("一元二次方程计算器\nMade in China & by:祭夜ゐ血泣 QQ:1690127128\n完成日:2016-2-15\n");
sy: printf("输入1回车看说明;输入2回车计算:"); scanf("%d", &q);
//判断输入的是否为字符如果是显示“请输入数字!”;否则执行else{......}里面的程序代码
while ((ch = getchar()))
if (ch != '\n')
{
printf("请输入数字!\n");goto sy;
}
else
{
if (q == 1) //判断输入的值是否为1,是则执行if (q == 1) {.....}中的代码否则跳过此段继续
{
printf("说明:\n本计算器计算的方程为a*x*x+b*x+c=0;\n计算器只要求您输入a,b,c三个系数的值\n时间:开始制作:2016年2月5日晚(初步制作完成)\n 修复bug :2016年2月14日晚 --- 15日早\n更新说明:\n本版修复了上一版的输入英文出现无限循环的bug。\n如有其它bug欢迎向我的QQ反馈!!\n");
se: printf("输入1返回,输入2计算:"); scanf("%d", &q);
while ((ch = getchar()))
if (ch != '\n')
{
printf("请输入数字!!\n");goto se;
}
else if (q == 1)
{
goto sy;
}
else if (q != 2)
{
printf("请重新输入!!\n"); goto se;
}
else
{
goto yyec;
} //判断输入值是否为数字,如果是数字,数字的值是否为1或2
} //以上为输入q的值为1时,执行的代码
else if (q == 2)//
{
yyec:
sa:
printf("输入a的值:"); scanf("%d", &a);
while ((ch = getchar()))
if (ch != '\n')
{
printf("请输入数字!!\n");goto sa;
}
else
{
sb:
printf("输入b的值:"); scanf("%d", &b);
while ((ch = getchar()))
if (ch != '\n')
{
printf("请输入数字!!\n");goto sb;
}
//输入b的值,并判断是否为数字
else {
sc:
printf("输入c的值:"); scanf("%d", &c);
while ((ch = getchar()))
if (ch != '\n')
{
printf("请输入数字!!\n");goto sc;
}
else
{
double daleta = b*b - 4*a*c;
double x1;
double x2;
x1 = (-b - sqrt(daleta)) / (2 * a);
x2 = (-b + sqrt(daleta)) / (2 * a);
printf("该一元二次方程为:%d*x*x+%d*x+%d = 0\n", a, b, c);
printf("daleta = %f\n", daleta);
if (daleta > 0)
{
printf("该一元二次方程有两个不相等的实数根;x1=%f;x2=%f\n", x1, x2);
}
else if (daleta == 0)
{
printf("该一元二次方程有两个相等的实数根:x1=x2=%f\n", x1);
//两个相等结果
}
else
{
printf("该一元二次方程无解!!\n");
}
cx:
printf("小程问你还想再算吗?(再算1,退出2):");
scanf("%d", &e);
if (e == 1)
{
goto yyec;
}
else if (e == 2)
{
exit(0);
}
else {
printf("祭夜温馨提示:输入错误,请重新输入!!\n"); goto cx;
}
}
//输入c的值,并判断是否为数字
}
}
} //输入的q的值为2时执行的代码
}
return 0;
}
一元二次方程计算器源码
(1)个小伙伴在吐槽
- 绝对干货,值得收藏!

