早教吧作业答案频道 -->其他-->
杭电1228读入两个小于100的正整数A和B,计算A+B.需要注意的是:A和B的每一位数字由对应的英文单词给出.测试输入包含若干测试用例,每个测试用例占一行,格式为"A+B=",相邻两字符串有一个空格
题目详情
杭电1228 读入两个小于100的正整数A和B,计算A+B.需要注意的是:A和B的每一位数字由对应的英文单词给出.
测试输入包含若干测试用例,每个测试用例占一行,格式为"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
#include
using namespace std;
int main()
{
string a,b;
int s1=0,s2=0,s;
loop:while(cin>>a)
{
if(a=="one")
s1=s1*10+1;
else if(a=="two")
s1=s1*10+2;
else if(a=="three")
s1=s1*10+3;
else if(a=="four")
s1=s1*10+4;
else if(a=="five")
s1=s1*10+5;
else if(a=="six")
s1=s1*10+6;
else if(a=="seven")
s1=s1*10+7;
else if(a=="eight")
s1=s1*10+8;
else if(a=="nine")
s1=s1*10+9;
else if(a=="+")
break;
}
while(cin>>b)
{
if(b=="one")
s2=s2*10+1;
else if(b=="two")
s2=s2*10+2;
else if(b=="three")
s2=s2*10+3;
else if(b=="four")
s2=s2*10+4;
else if(b=="five")
s2=s2*10+5;
else if(b=="six")
s2=s2*10+6;
else if(b=="seven")
s2=s2*10+7;
else if(b=="eight")
s2=s2*10+8;
else if(b=="nine")
s2=s2*10+9;
else if(b=="=")
break;
}
s=s1+s2;
cout
测试输入包含若干测试用例,每个测试用例占一行,格式为"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
#include
using namespace std;
int main()
{
string a,b;
int s1=0,s2=0,s;
loop:while(cin>>a)
{
if(a=="one")
s1=s1*10+1;
else if(a=="two")
s1=s1*10+2;
else if(a=="three")
s1=s1*10+3;
else if(a=="four")
s1=s1*10+4;
else if(a=="five")
s1=s1*10+5;
else if(a=="six")
s1=s1*10+6;
else if(a=="seven")
s1=s1*10+7;
else if(a=="eight")
s1=s1*10+8;
else if(a=="nine")
s1=s1*10+9;
else if(a=="+")
break;
}
while(cin>>b)
{
if(b=="one")
s2=s2*10+1;
else if(b=="two")
s2=s2*10+2;
else if(b=="three")
s2=s2*10+3;
else if(b=="four")
s2=s2*10+4;
else if(b=="five")
s2=s2*10+5;
else if(b=="six")
s2=s2*10+6;
else if(b=="seven")
s2=s2*10+7;
else if(b=="eight")
s2=s2*10+8;
else if(b=="nine")
s2=s2*10+9;
else if(b=="=")
break;
}
s=s1+s2;
cout
▼优质解答
答案和解析
1.没有包含头文件#include
2.题中要求A B同时为0的时候结束 对应结果不用输出,你编的会先输出再结束.
下面是正确的代码.可以参考下
#include
#include
int cmp(char s[])
{
if(strcmp(s,"zero")==0) return 0;
else if(strcmp(s,"one")==0) return 1;
else if(strcmp(s,"two")==0) return 2;
else if(strcmp(s,"three")==0) return 3;
else if(strcmp(s,"four")==0) return 4;
else if(strcmp(s,"five")==0) return 5;
else if(strcmp(s,"six")==0) return 6;
else if(strcmp(s,"seven")==0) return 7;
else if(strcmp(s,"eight")==0) return 8;
else if(strcmp(s,"nine")==0) return 9;
return 0;
}
main()
{
int count=0,i=10,a=0,temp=0;
char s[10];
while(scanf("%s",s)!=EOF)
{
if(strcmp(s,"=")==0)
{
if(count==2)
a+=temp;
else if(count==1)
a+=temp/10;
if(a==0)
return 0;
else
printf("%d\n",a);
a=0;
temp=0;
i=10;
count=0;
}
else if(strcmp(s,"+")==0)
{
if(count==2)
a=temp;
if(count==1)
a=temp/10;
count=0;
i=10;
temp=0;
}
else
{
count++;
temp+=i*cmp(s);
i=i/10;
}
}
}
2.题中要求A B同时为0的时候结束 对应结果不用输出,你编的会先输出再结束.
下面是正确的代码.可以参考下
#include
#include
int cmp(char s[])
{
if(strcmp(s,"zero")==0) return 0;
else if(strcmp(s,"one")==0) return 1;
else if(strcmp(s,"two")==0) return 2;
else if(strcmp(s,"three")==0) return 3;
else if(strcmp(s,"four")==0) return 4;
else if(strcmp(s,"five")==0) return 5;
else if(strcmp(s,"six")==0) return 6;
else if(strcmp(s,"seven")==0) return 7;
else if(strcmp(s,"eight")==0) return 8;
else if(strcmp(s,"nine")==0) return 9;
return 0;
}
main()
{
int count=0,i=10,a=0,temp=0;
char s[10];
while(scanf("%s",s)!=EOF)
{
if(strcmp(s,"=")==0)
{
if(count==2)
a+=temp;
else if(count==1)
a+=temp/10;
if(a==0)
return 0;
else
printf("%d\n",a);
a=0;
temp=0;
i=10;
count=0;
}
else if(strcmp(s,"+")==0)
{
if(count==2)
a=temp;
if(count==1)
a=temp/10;
count=0;
i=10;
temp=0;
}
else
{
count++;
temp+=i*cmp(s);
i=i/10;
}
}
}
看了 杭电1228读入两个小于10...的网友还看了以下:
黑箱测试不考虑程序内部细节、结构和实现方式,只是根据程序【】说明来设计测试用例。 2020-05-23 …
对于基本流A来说,表6-6所示中哪些测试用例属于正面测试用例,哪些测试用例属于负面测试用例。请用 2020-05-26 …
对于基本流A来说,表7-17中哪些测试用例属于正面测试用例,哪些测试用例属于负面测试用例,请用表7- 2020-05-26 …
以下关于功能测试用例的意义的叙述,正确的是(38)。①避免盲目测试并提高测试效率②令软件测试的实施 2020-05-26 …
软件测试的一项重要作业是设计测试用例。测试用例主要由输入数据和(1)两部分组成。测试用例的设计 2020-05-26 …
大大,这道题中的“输入包含多组测试用例.每组用例占一行”,计算a+bInput输入包含多组测试用例 2020-07-20 …
杭电1228读入两个小于100的正整数A和B,计算A+B.需要注意的是:A和B的每一位数字由对应的 2020-07-23 …
汉语翻英语,明天面试用.例如,我叫李建新,今年21,来自山东聊城.请在英语下注名汉语,你写啦我也会说 2020-11-13 …
大大,这道题中的“输入包含多组测试用例.每组用例占一行”,怎么实现呀?计算a+bInput输入包含多 2020-11-28 …
读入两个小于100的正整数A和B,计算A+B.需要注意的是:A和B的每一位数字由对应的英文单词给出. 2020-11-28 …