C语言题目:模拟计算器

题目描述

使用Switch语句编写一个模拟简单计算器的程序。依次输入两个整数和一个字符,并用空格隔开。如果该字 符是一个"+",则打印和;如果该字符是一个"-",则打印差;如果该字符是一个"*",则打印积;如果该字符是"/",则打印商;如果该字符是一个 "%",则打印余数。打印结果后输出一个空行。

输入格式

一行,前面两个数,再一个运算符号。

输出格式

运算表达式的结果。

样例输入

复制代码
3 4 +

样例输出

复制代码
7

代码流程及分析

1. 引入头文件

代码首先引入了stdio.h头文件,这是C语言标准输入输出库,用于处理输入输出函数,如scanfprintf

2. 主函数定义

main函数是程序的入口点,它没有接收任何参数,也没有返回值。

3. 定义变量

main函数内部,定义了以下变量:

  • int num1, num2;:两个整数变量,用于存储用户输入的两个操作数。
  • char operator;:一个字符变量,用于存储用户输入的运算符。
  • int sum;:一个整数变量,用于存储运算结果。

4. 读取输入

使用scanf函数按照格式"%d %d %c"读取用户输入的两个整数和一个字符。这里%d用于读取整数,%c用于读取字符。

5. 运算符判断

使用switch语句根据用户输入的运算符operator来决定执行哪种运算:

  • case '+': 如果运算符是'+',则执行加法,将结果存储在sum中。
  • case '-': 如果运算符是'-',则执行减法。
  • case '/': 如果运算符是'/',则执行整数除法。
  • case '*': 如果运算符是'*',则执行乘法。
  • case '%': 如果运算符是'%',则执行取模运算。

6. 输出结果

使用printf函数输出运算结果sum,格式化字符串"%d\n"表示输出的是一个整数,后跟一个换行符。

7. 程序结束

main函数返回0,表示程序正常结束。

源代码

复制代码
#include <stdio.h>
int main(void)
{
	int num1, num2;
	char operator;
	int sum;
	scanf("%d %d %c", &num1, &num2, &operator);
	switch (operator)
	{
	case '+':
		sum = num1 + num2;
		break;
	case '-':
		sum = num1 - num2;
		break;
	case '/':
		sum = num1 / num2;
		break;
	case '*':
		sum = num1 * num2;
		break;
	case '%':
		sum = num1 % num2;
		break;
	}
	printf("%d\n", sum);
	return 0;
}
相关推荐
落羽的落羽13 分钟前
【项目】JsonRpc框架——开发实现1(细节功能、字段定义、抽象层、具象层)
linux·服务器·网络·c++·人工智能·算法·机器学习
handler0134 分钟前
【算法】并查集(普通/扩展/带权)模板与例题
数据结构·c++·笔记·算法·c·图论·查并集
知识的宝藏1 小时前
Xpaht self::div 轴语法
开发语言
keykey6.1 小时前
卷积神经网络(CNN):让AI学会“看“
开发语言·人工智能·深度学习·机器学习
ss2731 小时前
【入门OJ题解】分苹果问题(Python/Java/C 实现)
java·c语言·python
qq7422349841 小时前
从“感知”到“决断”:测评百度伐谋产业决策智能体的端到端推理与行动机制
人工智能·算法·百度·大模型·运筹优化
IsJunJianXin1 小时前
谷歌搜索cookie NID逆向生成
开发语言·python·google搜索·sgss·nid-cookie·算法生成nid·google-cookie
weikecms1 小时前
美团霸王餐报名API接口
java·开发语言
你怎么知道我是队长1 小时前
CRC校验C语言实现-CRC8、CRC16、CRC16的直接计算法、查表法
c语言·前端·javascript
淘源码d1 小时前
医院专业级PACS系统完整源码(C+VC+MSSQL)
c语言·数据库·sqlserver·源码·pacs系统·医学影像系统