sgs网站开发公司,网站seo,中国食品网,电商网站制作成手机app定制魏#xff1a;QTWZPW#xff0c;获取更多源码等
目录 题目
要求
主要代码片段 题目
设计一个计算器软件#xff0c;具备如下功能提示界面。 要求
设计出界面#xff0c;注意界面名称最后为自己的姓名#xff1b;#xff08;20分#xff09;能够实现加、减、乘、…定制魏QTWZPW获取更多源码等
目录 题目
要求
主要代码片段 题目
设计一个计算器软件具备如下功能提示界面。 要求
设计出界面注意界面名称最后为自己的姓名20分能够实现加、减、乘、除功能40分能够将十进制转换成相应的二级制、八进制、十六进制数20分 4. 能够求解一元二次方程。20分
主要代码片段
#include stdio.h // 包含标准输入输出库
#include math.h // 包含数学函数库
#include stdlib.h // 包含标准库函数long decimalToBinary(long decimalNum); // 声明十进制转二进制函数
long decimalToOctal(long decimalNum); // 声明十进制转八进制函数
char* decimalToHex(long decimalNum); // 声明十进制转十六进制函数int main() { // 主函数开始int choice; // 定义选项变量double num1, num2, result; // 定义输入数和结果变量while (1) { // 进入无限循环printf(|-------------------------------|\n); // 打印菜单printf(|请选择你要的计算方法 |\n);printf(|-------------------------------|\n);printf(|加法请按_1 进制转换_5 |\n);printf(|减法请按_2 求一元二次方程_6 |\n);printf(|乘法请按_3 |\n); printf(|除法请按_4 退出_0 |\n); printf(|-------------------------------|\n);printf(Please write down the number: \n); // 提示用户输入选项scanf(%d, choice); // 读取用户选项if (choice 0) { // 如果选择退出printf(感谢使用\n); // 打印退出信息break; // 跳出循环}switch (choice) { // 根据选项进行操作case 1: // 加法printf(请输入两个数\n); // 提示用户输入两个数scanf(%lf %lf, num1, num2); // 读取两个数result num1 num2; // 计算结果printf(结果为%lf\n, result); // 打印结果break; // 结束本次操作case 2: // 减法printf(请输入两个数\n); // 提示用户输入两个数scanf(%lf %lf, num1, num2); // 读取两个数result num1 - num2; // 计算结果printf(结果为%lf\n, result); // 打印结果break; // 结束本次操作case 3: // 乘法printf(请输入两个数\n); // 提示用户输入两个数scanf(%lf %lf, num1, num2); // 读取两个数result num1 * num2; // 计算结果printf(结果为%lf\n, result); // 打印结果break; // 结束本次操作case 4: // 除法printf(请输入两个数\n); // 提示用户输入两个数scanf(%lf %lf, num1, num2); // 读取两个数if (num2 ! 0) { // 检查除数是否为0result num1 / num2; // 计算结果printf(结果为%lf\n, result); // 打印结果} else {printf(除数不能为0\n); // 若除数为0打印错误信息}break; // 结束本次操作case 5: // 进制转换printf(请输入一个十进制数\n); // 提示用户输入十进制数scanf(%lf, num1); // 读取十进制数printf(转换的进制2/8/16\n); // 提示用户选择转换进制scanf(%d, choice); // 读取用户选择switch (choice) { // 根据选择进行转换case 2: // 二进制printf(结果为%ld\n, decimalToBinary((long)num1)); // 打印结果break; // 结束本次操作case 8: // 八进制printf(结果为%ld\n, decimalToOctal((long)num1)); // 打印结果break; // 结束本次操作case 16: // 十六进制printf(结果为%s\n, decimalToHex((long)num1)); // 打印结果break; // 结束本次操作default: // 其他情况printf(无效的选择\n); // 打印错误信息}break; // 结束本次操作case 6: // 求一元二次方程printf(请输入一元二次方程的三个系数a, b, c\n); // 提示用户输入系数scanf(%lf %lf %lf, num1, num2, result); // 读取系数if (num1 0) { // 检查是否为一元二次方程printf(不是一元二次方程\n); // 若不是打印错误信息} else {double delta num2 * num2 - 4 * num1 * result; // 计算判别式if (delta 0) { // 判别式大于0double x1 (-num2 sqrt(delta)) / (2 * num1); // 计算第一个根double x2 (-num2 - sqrt(delta)) / (2 * num1); // 计算第二个根printf(方程的根为%lf, %lf\n, x1, x2); // 打印结果} else if (delta 0) { // 判别式等于0double x -num2 / (2 * num1); // 计算唯一根printf(方程的根为%lf\n, x); // 打印结果} else {printf(方程无实数根\n); // 判别式小于0打印错误信息}}break; // 结束本次操作default: // 无效选项printf(无效的选择\n); // 打印错误信息}}return 0; // 返回主函数
}