2013-04-08 9 views
5

Ho bisogno di trasformare l'input dell'utente (un numero) in un'uscita di spazi TAB. Esempio chiedo utente:Spazi di stampa C++ o schede dato un numero intero di input utente

cout << "Enter amount of spaces you would like (integer)" << endl; 
cin >> n; 

il (n) ho bisogno di trasformarlo in un output come:

cout << n , endl; 

e cosa digitali sullo schermo sarebbero gli spazi ex ingresso è 5 out put | _ | < ~~~ ci sono cinque spazi lì.

Scusa Se non posso essere chiaro, probabilmente questo è il motivo per cui non sono stato in grado di trovare una risposta guardando attraverso le domande di altre persone.

qualsiasi aiuto sarà molto apprezzato.

risposta

8
cout << "Enter amount of spaces you would like (integer)" << endl; 
cin >> n; 
//print n spaces 
for (int i = 0; i < n; ++i) 
{ 
    cout << " " ; 
} 
cout <<endl; 
+0

doesnt \ t lavoro come bene? – LoveMeow

5

Hai solo bisogno di un ciclo che itera il numero di volte indicato da n e stampa uno spazio ogni volta. Questo avrebbe fatto:

while (n--) { 
    std::cout << ' '; 
} 
27

Basta usare std::string:

std::cout << std::string(n, ' '); 

In molti casi, tuttavia, a seconda di cosa viene dopo, è può essere più semplice per aggiungere solo n al parametro a un std::setw.

+0

Questa è la risposta giusta per questa domanda. Pollice su. – saurabheights

1

mi è capitato di cercare qualcosa di simile e arrivato fino a questo:

std::cout << std::setfill(' ') << std::setw(n) << ' '; 
Problemi correlati