题记(28)--A+B(字符串操作)

2024-01-25 04:20
文章标签 操作 字符串 28 题记

本文主要是介绍题记(28)--A+B(字符串操作),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、题目内容

二、输入描述

三、输出描述

四、输入输出示例

五、完整C语言代码


一、题目内容

读入两个小于100的正整数A和B,计算A+B. 需要注意的是:A和B的每一位数字由对应的英文单词给出.

二、输入描述

测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔.当A和B同时为0时输入结束,相应的结果不要输出.

三、输出描述

对每个测试用例输出1行,即A+B的值.

四、输入输出示例

输入:

one + two =
three four + five six =
zero seven + eight nine =
zero + zero =

输出:

3
90
96

五、完整C语言代码

AC代码~#include<stdio.h>
#include<string.h>int cmp(char* s1, char* s2, int len) {  // 判断两串是否相等for (int i = 0; i < len; i++)if (s1[i] != s2[i])return 0;return 1;
}int main() {char s[100];char num[10][10] = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};while (gets(s)) {int num1 = 0;  // num1和num2存储最终相加的两个数int num2 = 0;int i = 0;int k = 0;int a = 0;char tmp[10]; // 第一个数第一位char tmp2[10];// 第一个数第二位while (s[i] != '+') {if ('a' <= s[i] && s[i] <= 'z' && k == 0) {tmp[i] = s[i];i++;} else if ('a' <= s[i] && s[i] <= 'z' && k == 1) {tmp2[a] = s[i];a++;i++;} else { // s[i] == ' 'if (k == 0) {for (int j = 0; j < 10; j++) {if (cmp(tmp, num[j], strlen(num[j]))) {num1 = num1 * 10 + j;k = 1;break;}}} else {for (int j = 0; j < 10; j++) {if (cmp(tmp2, num[j], strlen(num[j]))) {num1 = num1 * 10 + j;break;}}}i++;}}i = i + 2;char tmp3[10];  // 第二个数第一位char tmp4[10];  // 第二个数第二位k = 0;int j = 0;a = 0;while (s[i] != '=') {if ('a' <= s[i] && s[i] <= 'z' && k == 0) {tmp3[j] = s[i];j++;} else if ('a' <= s[i] && s[i] <= 'z' && k == 1) {tmp4[a] = s[i];a++;} else { // s[i] == ' 'if (k == 0) {for (int p = 0; p < 10; p++) {if (cmp(tmp3, num[p], strlen(num[p]))) {num2 = num2 * 10 + p;k = 1;break;}}} else {for (int p = 0; p < 10; p++) {if (cmp(tmp4, num[p], strlen(num[p]))) {num2 = num2 * 10 + p;break;}}}}i++;}if (num1 == 0 && num2 == 0)break;printf("%d\n", num1 + num2);}
}

这篇关于题记(28)--A+B(字符串操作)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/642070

相关文章

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

Python操作PDF文档的主流库使用指南

《Python操作PDF文档的主流库使用指南》PDF因其跨平台、格式固定的特性成为文档交换的标准,然而,由于其复杂的内部结构,程序化操作PDF一直是个挑战,本文主要为大家整理了Python操作PD... 目录一、 基础操作1.PyPDF2 (及其继任者 pypdf)2.PyMuPDF / fitz3.Fre

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali

MySQL 强制使用特定索引的操作

《MySQL强制使用特定索引的操作》MySQL可通过FORCEINDEX、USEINDEX等语法强制查询使用特定索引,但优化器可能不采纳,需结合EXPLAIN分析执行计划,避免性能下降,注意版本差异... 目录1. 使用FORCE INDEX语法2. 使用USE INDEX语法3. 使用IGNORE IND

C# $字符串插值的使用

《C#$字符串插值的使用》本文介绍了C#中的字符串插值功能,详细介绍了使用$符号的实现方式,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录$ 字符使用方式创建内插字符串包含不同的数据类型控制内插表达式的格式控制内插表达式的对齐方式内插表达式中使用转义序列内插表达式中使用

详解MySQL中JSON数据类型用法及与传统JSON字符串对比

《详解MySQL中JSON数据类型用法及与传统JSON字符串对比》MySQL从5.7版本开始引入了JSON数据类型,专门用于存储JSON格式的数据,本文将为大家简单介绍一下MySQL中JSON数据类型... 目录前言基本用法jsON数据类型 vs 传统JSON字符串1. 存储方式2. 查询方式对比3. 索引

Python使用openpyxl读取Excel的操作详解

《Python使用openpyxl读取Excel的操作详解》本文介绍了使用Python的openpyxl库进行Excel文件的创建、读写、数据操作、工作簿与工作表管理,包括创建工作簿、加载工作簿、操作... 目录1 概述1.1 图示1.2 安装第三方库2 工作簿 workbook2.1 创建:Workboo

MySQL字符串常用函数详解

《MySQL字符串常用函数详解》本文给大家介绍MySQL字符串常用函数,本文结合实例代码给大家介绍的非常详细,对大家学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql字符串常用函数一、获取二、大小写转换三、拼接四、截取五、比较、反转、替换六、去空白、填充MySQL字符串常用函数一、

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配