/* 作品名称:一元二次方程计算器 制作者:祭夜ゐ血泣 目的:计算一元二次方程 功能:能更加便捷的计算一元二次方程 时间:开始制作: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)个小伙伴在吐槽
- 绝对干货,值得收藏!