hdu 1228-A+B_读入两个小于100的正整数a和b,计算a b。需要注意的是:a和b的每一位数字由对应的英-程序员宅基地

技术标签: 字符串  

A + B

                                                                              Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

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

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

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

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

Sample Output
  
  
   
3 90 96
解题思路:把要处理的等式当做一个字符串,然后用一个s1字符数组记录出现的小写字母,当遇到空格时代表一个单词结束,然后用这个单词和每个数字的单词进行比较,找出这个单词代表的数字是多少,记录下数字后将s1中的元素清除,再次从s1[0]开始保存单词,直到字符串结束,找出 + 前后两部分各代表的整数。
AC代码:
#include<stdio.h>
#include<string.h>
int main()
{
	char str[30],s1[20];
	int i,j,len,s,sum1,sum2,flag;
    while(gets(str)!=NULL)
	{
		len=strlen(str);
		sum1=sum2=0; 
		flag=0; 
		for(i=0,j=0;i<len;i++)
		{
			if(str[i]>='a'&&str[i]<='z')  /*如果是小写字母*/
				s1[j++]=str[i];  /*保存在s1中*/
			else if(str[i]==' '&&str[i-1]!='+')   /*判断str[i-1]!='+'是为了避免将 + 当做一个字符串处理*/
			{
				s1[j]='\0'; /*千万不能忘记字符串结束标志*/
				if(!strcmp(s1,"zero")) s=0; 
				else if(!strcmp(s1,"one")) s=1;
				else if(!strcmp(s1,"two")) s=2;
				else if(!strcmp(s1,"three")) s=3;
				else if(!strcmp(s1,"four")) s=4;
				else if(!strcmp(s1,"five")) s=5;
				else if(!strcmp(s1,"six")) s=6;
				else if(!strcmp(s1,"seven")) s=7;
				else if(!strcmp(s1,"eight")) s=8;
				else if(!strcmp(s1,"nine")) s=9; /*比较字符串,找出代表的数字*/
				j=0;  /*记得从零开始*/
				if(!flag)
					sum1=sum1*10+s; /*sum1保存 + 前面部分代表的数字*/
				else 
					sum2=sum2*10+s; /*sum2保存 + 后面部分代表的数字*/
			}
			else if(str[i]=='+')
				flag=1;  /*标记 + 已出现*/
		}
		if(sum1==0&&sum2==0) /*两个数都是0时结束程序*/
			break; 
		else
		    printf("%d\n",sum1+sum2);
	}
	return 0;
}


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lyhvoyage/article/details/9316569

智能推荐

爬虫爬取mp3文件例子_抓包里的mp3地址怎么下载-程序员宅基地

文章浏览阅读1.7k次。爬取一个页面下所需要的所有的mp3文件,音乐文件。_抓包里的mp3地址怎么下载

通过javacv在ssm中使用mqtt抓拍IP摄像头的数据流照片_rtsp批量获取摄像头照片-程序员宅基地

文章浏览阅读1.2k次。因为网上没找到资料,现在把我目前做出来的成功总结一下,打算日后再继续优化,殷切希望有大佬指导下我该怎么优化javacv工具包。首先是在ssm中要引用:&lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;org.bytedeco&lt;/groupId&gt; &lt;artifactId&gt;javacv..._rtsp批量获取摄像头照片

使用Vanilla JavaScript创建Music Jam Station-程序员宅基地

文章浏览阅读90次。这篇文章是由同行评审克里斯·佩里 , 麦克拉莱尔和马特·伯内特 。 感谢所有SitePoint的审稿作出SitePoint内容也可以是最好的! HTML5的音频播放器却出现了一些新的和令人兴奋的可能性,尤其是当它涉及到与音乐有关的Web应用程序。 我希望通过走你通过I讨论如何创建此向您介绍其中的一些可能性果酱站 。 该项目最初开始作为一个实验,但随着时间的推移演变成一个开放式的实践和教学工具,...

计算机硬件市场调查实验报告,计算机组装与维护实训报告范例.doc-程序员宅基地

文章浏览阅读528次。文档介绍:实验报告课程名称:计算机组装与维护学号:姓名:院系:专业:教师:2017年月实验一拆装主机箱实验时间:实验地点:同组人员:一、实验目的通过学****本实训内容,掌握微机组装方面的知识,进一步加深对微机硬件系统的认识,具备微机硬件维护的基本功能。二、实验要点拆、装是两个相反的操作。拆、装操作没有特定的顺序,要因时制宜,随机应变。一般原则为:先装靠里边的、固定的,如电源、主板等,再装靠外边的..._微机硬件市场调查及选购电脑硬件实训报告

网络设备配置(一)_网络设备的配置-程序员宅基地

文章浏览阅读6.3k次,点赞3次,收藏12次。1 Cisco 网络设备的常见接口(1)console接口:控制台接口,对交换机进行配置和管理的,只能用专用控制线链接,一般采用RJ-45接口。(2)Ethernet接口:用于链接网络或者主机接口,路由器、交换机上都有。(3)AUI接口:老式Ethernet接口,用来与粗同轴电缆连接的接口,在令牌环网或总线型网中是一种比较常见的端口之一。(4)Serial接口:串行接口,用于连接广_网络设备的配置

随便推点

华为OSPF 多区域配置-程序员宅基地

文章浏览阅读836次。实验名称:华为OSPF 多区域配置实验拓扑:所需设备:4台路由器 AR1 AR2 AR3 AR4地址规划:AR1 G0/0/1 IP 192.168.1.1/24 AR1 LoopBack 1 IP 10.10.10.1/24 (回环口地址) AR2 G0/0/0 IP 192.168.1.2/24 AR2 G0/0/1 IP 192..._华为ospf协议多区域设计与实现

Creational Patterns Part 1/5: Factory Pattern-程序员宅基地

文章浏览阅读41次。Creational Patterns Part 1/5: Factory Pattern目录Creational Patterns Part 15 Factory Pattern目录DefinitionUML Class DiagramImplementationDefinitionFactory Pattern是Java中...

【Linux】缓冲区与缓冲区的刷新策略_linux磁盘刷新-程序员宅基地

文章浏览阅读763次,点赞25次,收藏22次。缓冲区超详解_linux磁盘刷新

简述链式前向星_链式向前星非结构体-程序员宅基地

文章浏览阅读945次,点赞3次,收藏2次。简述链式前向星。回顾了邻接表并讲解了链式前向星_链式向前星非结构体

AHOI2016 迷宫_ahoi2016小学-程序员宅基地

文章浏览阅读603次。今年在考场上做这道题的时候还是初三,现在就变成高一了。。突然又看见这道题就突然想来AC一下。。表示这道骚题在考场上做的时候各种懵逼的并查集(脑子不好使)。虽然到现在我还坚信并查集一定能做出来。。好言归正传,此题的思路就是判断每一个圆是不是包含两个点。如果都包含,或者都不包含,则答案不变;如果只有一个点包含在里面,就只好ans++了。。当年是爆0了这题(其实也就今年)。现在做毫无_ahoi2016小学

(二十九)ArcGIS空间数据的转换与处理——数据处理_arcgis处理数据-程序员宅基地

文章浏览阅读2.3k次,点赞3次,收藏14次。ArcGIS空间数据的转换与处理——数据处理_arcgis处理数据

推荐文章

热门文章

相关标签