2012-11-22 65 views
0

我想從空格分隔的整數輸入做一個鏈接列表。從空間分隔的輸入創建鏈接列表

輸入:

  1. 節點數量
  2. 空格分隔輸入

int main() 
{ 
    int n; 
    cout<<"Enter number of nodes"; 
    cin>>n; 
    cout<<"\nEnter data"<<endl; 
    int temp; 
    lNode *head = NULL; 
    while(cin>>temp) 
    { 
     CreateLinkedList(&head,temp); 
    } 
    PrintLinkedList(head); 

    return 0; 
} 

在這裏,我沒有得到如何將用戶輸入限制節點的數量這是他作爲第一個輸入提供的。有沒有其他的方式來獲得用戶輸入?

+2

'while(n-- &&(cin >> temp))'似乎是一個可能的想法。 – WhozCraig

+0

試過這個,沒有工作 –

+0

什麼不符合你的期望? –

回答

1

你可以要求輸入一個字符串:

string line; 
getline(cin, line); 

然後你可以使用字符串流(#include <sstream>如)分開的線路輸入的數字,所以你應該包括sstream庫:

stringstream ss(line); 
int number; 

while(ss >> number) { 
    ... do whatever you want to do with the number here ... 
}