酷代码 AI
菜单
服务商

一行代码搞定!数字表达式乘加运算结果对 10000 取模输出

```cpp #include<bits/stdc++.h> // 使用标准命名空间 using namespace std; // 主函数,程序的入口点 int main() { // 定义一个字符串变量 s,用于存储输入的表达式 string s; // 从标准输入读取一个字符串到 s cin >> s; // 定义一个长整型变量 ans,用于存储最终的计算结果 long long ans = 0; // 定义一个长整型变量 a,用于存储乘法的中间结果 long long a = 1; // 定义一个长整型变量 b,用于存储当前连续数字组成的数值 long long b = 0; // 遍历字符串 s 的每一个字符 for (int i = 0; i <= s.length(); i++) { // 如果当前字符是数字且未遍历到字符串末尾 if (i < s.length() && isdigit(s[i])) { // 将当前数字累加到 b 中,更新 b 的值 b = b * 10 + (s[i] - '0'); } else { // 将当前连续数字组成的数值 b 乘到乘法中间结果 a 上 a *= b; // 如果遍历到字符串末尾或者当前字符是加号 if (i == s.length() || s[i] == '+') { // 将乘法中间结果 a 累加到最终结果 ans 上 ans += a; // 将乘法中间结果 a 重置为 1 a = 1; } // 将当前连续数字组成的数值 b 重置为 0 b = 0; } } // 对最终结果 ans 取模 10000 ans %= 10000; // 输出最终结果 ans 到标准输出 cout << ans << endl; // 主函数正常结束,返回 0 return 0; } ``` 这段代码的核心功能是计算一个由数字、加号和乘号组成的表达式的值,并且在计算过程中只处理乘法和加法,最后将结果对 10000 取模输出。它遵循乘法优先于加法的运算规则。例如,对于输入 `3+4*5`,程序会先计算 `4*5 = 20`,再计算 `3 + 20 = 23`,最后输出 `23 % 10000 = 23`。 ######[AI问答 | 570点数解答 | 2025-11-26 20:26:12]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]