一道现场编程题:输入一组数字或字符串,中间用空格间隔,实现数字和字符串的加法????面试一家公司的编程题求
一道现场编程题:输入一组数字或字符串,中间用空格间隔,实现数字和字符串的加法????
面试一家公司的编程题求各位大大指教:
计算 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;} 