一道现场编程题:输入一组数字或字符串,中间用空格间隔,实现数字和字符串的加法?解决方案
一道现场编程题:输入一组数字或字符串,中间用空格间隔,实现数字和字符串的加法????
面试一家公司的编程题求各位大大指教:
计算 a + b
输入
输入一组数字或字符串,中间用空格间隔,实现数字和字符串的加法。
输出
数字输入为各个数字之和;字符串为各个串的连接串。
要实现的例子:
1)、输入:
1 5 7
输出:
13(相当于1+5+7)
2)、输入:
1 5 A
输出
15A
------解决方案--------------------
面试一家公司的编程题求各位大大指教:
计算 a + b
输入
输入一组数字或字符串,中间用空格间隔,实现数字和字符串的加法。
输出
数字输入为各个数字之和;字符串为各个串的连接串。
要实现的例子:
1)、输入:
1 5 7
输出:
13(相当于1+5+7)
2)、输入:
1 5 A
输出
15A
------解决方案--------------------
- C/C++ code
#include<sstream> #include<string> #include<iostream> using namespace std; int main() { string line; getline(cin,line); if(line.find_first_not_of("-0123456789 \t")!=string::npos) { string ans=""; string tmp; stringstream ss(line); while(ss>>tmp) { ans+=tmp; } cout<<ans<<endl; } else { int ans=0; int tmp; stringstream ss(line); while(ss>>tmp) { ans+=tmp; } cout<<ans<<endl; } return 0; }