毒白菜 2017-10-31 12:28 采纳率: 100%
浏览 1470
已采纳

cin输入不成功,猜测是while循环造成的

//寻找nums中哪两个数相加等于target
class Solution {
public:
vector twoSum(vector& nums, int target) {
vector a;
for (int i = 0; i<nums.size(); i++)
for (int j = 0; j<nums.size(); j++)
if (nums[i] + nums[j] == target)
{
a.push_back(nums[i]);
a.push_back(nums[j]);
return a;
}
return a;
}
};

void main()
{
Solution A;
vector nums;
cout << "please write";
int i,j;
while (cin >> i) { nums.push_back(i); }
cout << "please write the target:"< //cin >> j; 这步不成功,直接跳到最后的 system("pause");
for (auto c : A.twoSum(nums, j))
cout << c << " ";
system("pause");
}

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-11-01 00:55
    关注
     while (cin >> i) { nums.push_back(i); }
    
    写成
    do { cin >> i; if (i) nums.push_back(i); } while (i != 0);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题