如何检测换行?

时间:2019-04-28 10:35:02

标签: c++ newline

这是一个作业问题。

  

给出一组整数,请计算这些整数的乘积   通过乘法运算得出数字。

     

最多输入九行测试数据集,每行(或数据集)   包含多个由单个空格分隔的整数。

     

每个数据集都包含n个整数,1≤n≤12
  数据集中的每个整数m的限制为0≤m≤40

     

对于每个输入行(或数据集),打印这些输入行的乘积值   涉及的数字。请在每个末尾打印回车   输出线。

     

输入:2 3 4
  输出:24

     

输入:5 2
  输出:10

第二次输入我要40。

这就是我试图解决此问题的方式。(我的第二个输出不正确;我得到40)

#include <iostream>
#include <string>
using namespace std;

int main()
{
    string line;
    int twodigit =0;
    while(getline(cin,line,'\n'))
    {
        int num=1,i;
        for(i=0;i<sizeof(line)-1;i++){
            if(line[i]==' '){
                twodigit =0;
                continue;
            }
           else if((line[i]>=48 && line[i]<=57) && lol==1){
                num*=10;
                num+=(line[i]-'0');
            }
            else if(line[i]>=48 && line[i]<=57){
                num*=(line[i]-'0');
                twodigit =(line[i+1]>=48 && line[i+1]<=57) ? 1:0;
            }
        }
        cout<<num<<endl;
        twodigit =0;
    }
}

因为我不知道如何检测换行符,所以我尝试了此操作。

0 个答案:

没有答案