输入任意长度的加、减混合表达式,回车结束; 表达式不含有空格; 如果表达式有其它运算符,则提前结束
输入:
10+3-2+5-6
输出:
10
c语言简单运用简单运用
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- LYSnowy 2022-02-04 09:39关注
#include<stdio.h> int cal(int st[], int k) { int sum = st[0]; for (int m = 1; m < k - 1; m++, m++) { if (st[m] == '+') { sum = sum + st[m + 1]; } else { if (st[m] == '-') { sum = sum - st[m + 1]; } } } return sum; } void main() { int sum1 = 0; int i, c = 0; char st1[200]; int st2[100]; scanf("%s", st1); for (i = 0; st1[i] != '\0'; i++) { if (st1[i] > 47 && st1[i] < 58) { sum1 = (st1[i] - 48) + sum1 * 10; st2[c] = sum1; } else { st2[++c] = st1[i]; sum1 = 0; c++; } } printf("%d\n", cal(st2, c + 1)); return; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 如何绘制动力学系统的相图
- ¥15 对接wps接口实现获取元数据
- ¥20 给自己本科IT专业毕业的妹m找个实习工作
- ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
- ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
- ¥50 mac mini外接显示器 画质字体模糊
- ¥15 TLS1.2协议通信解密
- ¥40 图书信息管理系统程序编写
- ¥20 Qcustomplot缩小曲线形状问题
- ¥15 企业资源规划ERP沙盘模拟