#include <stdio.h>\n#include <stdlib.h>\n#include <math.h> \n\n#define PI 3.1415926\n\nvoid quadraticEquation();\nvoid pythagoreanTheorem();\nvoid areaOfTriangle();\nvoid volumeOfCylinder();\nvoid SOfBall();\nvoid volumeOFBall();\nvoid daoshu();\nvoid addUserFormula();\n\nint main() {\n\t\n\tint a;//第一级选择 \n\twhile(1){\n\t printf("\n"); \n\t printf("\n请选择以下几个选项\n");\n\t printf("1.常见公式查询\n");\n\t printf("2.部分公式计算\n"); \n\t printf("3.退出程序\n");\n\t printf("\n"); \n\t printf("您的选项是:\n");\n\t scanf("%d",&a);\n\t \n\t if(a==3) return 0;\n\t if(a==1||a==2);\n\t else printf("您输入的选项不合法!请重试\n");\n\t \n\t\n\twhile(a==1)\n\t {\n\t printf("\n请在以下选项中选择您要查询的公式:\n");\n\t printf("1.常见函数的导数\n");\n\t printf("2.正弦定理\n");\n\t printf("3.余弦定理\n");\n\t printf("4.辅助角定理\n");\n\t printf("5.球的表面积公式\n");\n\t printf("6.球的体积公式\n");\n\t printf("7.添加新公式\n");\n\t printf("0.返回上一级\n") ;\n\t int b;//第二级选择\n\t scanf("%d",&b);\n\t switch (b) {\n\t case 0:\n\t b=0;\n\t a=0;\n\t break;\n\t case 1:\n\t daoshu();\n\t break;\n\t case 2:\n\t printf("a/sin A=b/sin B=c/sin C=2R\n");\n\t printf("R外三角形的外接圆半径\n");\n\t break;\n\t case 3:\n\t printf("cos A=bb+cc-aa/2bc\n");\n\t break;\n\t case 4:\n\t printf("asinx+bcosx=√ (a2+b2)sin [x+arctan (b/a)]\n");\n\t break;\n\t case 5:\n\t printf("S=4ΠRR\n");\n\t break;\n\t case 6:\n\t printf("V=4ΠRRR/3\n");\n\t break; \n\t case 7:\n\t addUserFormula();\n\t break;\n\t default:\n\t printf("无效的选项,请重新输入。\n");\n\t break;\n\t }\n\t }\n\t \n\t //return 0;\n\t\n\t int choice; //第三级选择 \n\n\t while (a==2) {\n\t printf("\n请选择要查询的数学公式:\n");\n\t printf("1. 二次方程\n");\n\t printf("2. 勾股定理\n");\n\t printf("3. 三角形面积\n");\n\t printf("4. 圆柱体体积\n");\n\t printf("5.球的表面积\n");\n\t printf("6.球的体积\n");\n\t printf("0. 返回上一级\n");\n\t printf("请输入选项:\n");\n\t scanf("%d", &choice);\n\n\t switch (choice) {\n\t case 0:\n\t choice=0;\n\t a=0;\n\t break;\n\t case 1:\n\t quadraticEquation();\n\t break;\n\t case 2:\n\t pythagoreanTheorem();\n\t break;\n\t case 3:\n\t areaOfTriangle();\n\t break;\n\t case 4:\n\t volumeOfCylinder();\n\t break;\n\t case 5:\n\t SOfBall();\n\t break;\n\t case 6:\n\t volumeOFBall();\n\t break;\n\t default:\n\t printf("无效的选项,请重新输入。\n");\n\t break;\n\t }\n\t }\n}\n return 0;\n}\n\nvoid quadraticEquation() {\n double a, b, c;\n double discriminant;\n double root1, root2;\n\n printf("\n请输入二次方程的系数:\n");\n printf("a = ");\n scanf("%lf", &a);\n printf("b = ");\n scanf("%lf", &b);\n printf("c = ");\n scanf("%lf", &c);\n\n discriminant = b * b - 4 * a * c;\n\n if (discriminant > 0) {\n root1 = (-b + sqrt(discriminant)) / (2 * a);\n root2 = (-b - sqrt(discriminant)) / (2 * a);\n printf("方程的两个根为:%.2lf和%.2lf\n", root1, root2);\n } else if (discriminant == 0) {\n root1 = -b / (2 * a);\n printf("方程的两个根相等,为:%.2lf\n", root1);\n } else {\n double realPart = -b / (2 * a);\n double imaginaryPart = sqrt(-discriminant) / (2 * a);\n printf("方程的两个复根为:%.2lf + %.2lfi和%.2lf - %.2lfi\n", realPart, imaginaryPart, realPart, imaginaryPart);\n }\n}\n\nvoid pythagoreanTheorem() {\n double a, b, c;\n\n printf("\n请输入三角形的两条直角边的长度:\n");\n printf("a = ");\n scanf("%lf", &a);\n printf("b = ");\n scanf("%lf", &b);\n\n c = sqrt(a * a + b * b);\n printf("斜边的长度为:%.2lf\n", c);\n}\n\nvoid areaOfTriangle() {\n double base, height;\n\n printf("\n请输入三角形的底和高:\n");\n printf("底 = ");\n scanf("%lf", &base);\n printf("高 = ");\n scanf("%lf", &height);\n\n double area = 0.5 * base * height;\n printf("三角形的面积为:%.2lf\n", area);\n}\n\nvoid volumeOfCylinder() {\n double radius, height;\n\n printf("\n请输入圆柱体的底面半径和高:\n");\n printf("半径 = ");\n scanf("%lf", &radius);\n printf("高 = ");\n scanf("%lf", &height);\n\n double volume = PI * radius * radius * height;\n printf("圆柱体的体积为:%.2lf\n", volume);\n}\n\nvoid SOfBall() {\n printf("请输入球的半径:\n");\n int r;\n double S;\n scanf("%d",&r);\n S=4PIrr;\n printf("球的表面积为:%.21f\n",S);\n} \n\nvoid volumeOFBall() {\n printf("请输入球的半径:\n");\n int r;\n double V;\n scanf("%d",&r);\n V=4PIrr*r/3;\n printf("球的表面积为:%.21f\n",V);\n}\n\nvoid daoshu(){\n printf("(C) ′=0, C为常数\n");\n printf("x ′=1\n");\n printf("(In x) ′=1/x\n");\n printf("sin x ′=cos x\n");\n printf("cos x ′=(-sin x)\n");\n}\n\nvoid addUserFormula(){\n int order;\n char S1[100];\n char S2[100];\n printf("请输入您要添加的公式序号:\n");\n scanf("%d", &order);\n printf("请输入您要添加的公式名称:\n");\n scanf("%s", S1);\n printf("请输入公式的内容:\n");\n scanf("%s", S2);\n printf("您添加的公式为:%d.%s\n公式内容:%s\n", order, S1, S2);\n


原文地址: https://www.cveoy.top/t/topic/pSAJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录