您的位置:首页 > 科技 > 能源 > 网络营销渠道名词解释_软件技术升本可以升什么专业_淮安网站seo_seo数据是什么

网络营销渠道名词解释_软件技术升本可以升什么专业_淮安网站seo_seo数据是什么

2025/4/3 7:08:14 来源:https://blog.csdn.net/weixin_45036508/article/details/146964459  浏览:    关键词:网络营销渠道名词解释_软件技术升本可以升什么专业_淮安网站seo_seo数据是什么
网络营销渠道名词解释_软件技术升本可以升什么专业_淮安网站seo_seo数据是什么

编写一个程序实现一个简单的计算器,能够处理加法、减法、乘法和除法。

输入:用户输入两个数字(可以带小数)和一个操作符(+、-、*、/)。

输出:显示计算的表达式及结果。

注意以下几个要求:

  1. 代码可以直接写在main函数里,不需要提取函数。

  2. 输入的表达式应当符合格式要求,应当正常录入两个操作数和一个运算符,否则直接退出程序。

  3. 在进行除法操作时,需要保证除数不为0,若除数为0,则直接退出程序。
    提示:考虑switch结构,选择不同的运算符。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
/*
计算器,能够处理加法、减法、乘法和除法。
输入:用户输入两个数字(可以带小数)和一个操作符(+、-、*、/)。
输出:显示计算的表达式及结果。注意以下几个要求:
1. 代码可以直接写在main函数里,不需要提取函数。
2. 输入的表达式应当符合格式要求,应当正常录入两个操作数和一个运算符,否则直接退出程序。
3. 在进行除法操作时,需要保证除数不为0,若除数为0,则直接退出程序。
*/
int main(void) {double num1, num2;char operator;double result;printf("输入计算器的表达式(例如:1+1):");int ret = scanf("%lf %c %lf", &num1, &operator,&num2);//ret == 3 是用于判断输入是否 数字 字符 数字的格式.if (ret != 3) {printf("输入的表达式格式不合法!\n");return 1;}switch (operator) {case '+':result = num1 + num2;break;case '-':result = num1 - num2;break;case '*':result = num1 * num2;break;case '/':{if (num2 != 0) {result = num1 / num2;}else {printf("Error: 除数为0!\n");return 1;}break;}default:printf("Error: 无法识别的操作符!\n");return 1;//程序异常退出}printf("计算的结果是: %.2lf %c %.2lf = %.2lf\n", num1, operator,num2, result);return 0;
}

在这里插入图片描述
在这里插入图片描述

在上面简单计算器题目的基础上,实现以下功能:

1.在进行完一次运算后,询问用户是否继续运算。只要用户输入y/Y就可以继续运算,而不是只能计算一次。

2.当用户的输入有误时,不退出程序,而是要求用户继续输入表达式计算。

在这里插入图片描述

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
/*
上面简单计算器题目的基础上,实现以下功能:
1.在进行完一次运算后,询问用户是否继续运算。只要用户输入y/Y就可以继续运算,而不是只能计算一次。
2.当用户的输入有误时,不退出程序,而是要求用户继续输入表达式计算。可以考虑使用do...while循环结构,配合循环控制变量来解决,代码仍然都写在main函数中即可。
*/
int main(void) {double num1, num2;char operator;double result;char flag = 'y'; //flag: 控制循环是否继续的变量,初始化为'y'do{printf("请输入需要计算的表达式(例如:1 + 1): ");int ret = scanf("%lf %c %lf", &num1, &operator, &num2);if (ret != 3) {printf("Error: 输入的表达式格式不合法!请重新输入。\n\n");while (getchar() != '\n'); // 清空缓冲区至行尾,避免影响下次输入continue; // 继续下一次循环}switch (operator) {case '+':result = num1 + num2;break;case '-':result = num1 - num2;break;case '*':result = num1 * num2;break;case '/': {if (num2 != 0) {result = num1 / num2;}else {printf("Error: 除数为0!请重新输入表达式。\n\n");continue;}break;}default:printf("Error: 无法识别的操作符!请重新输入表达式。\n\n");continue;}printf("计算的结果是:%.2lf %c %.2lf = %.2lf\n\n", num1, operator, num2, result);printf("是否继续计算?(输入'y/Y'继续,其他任意键结束): ");while (getchar() != '\n'); // 清空缓冲区至行尾,避免影响下次输入scanf(" %c", &flag);printf("\n");} while (flag == 'y' || flag == 'Y');return 0;
}

在这里插入图片描述
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com