2015-10-01 2 views
-2

В Python мы используем print("\n" * 15). Интересно, как мы можем это сделать в программировании c без printf("\n\n\n....\n");. Есть ли какая-нибудь функция для этого?Как использовать несколько « n» в программировании c

+1

ли [расширения GNU C] (https://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html) приемлемый (' fputs ((char [16]) {[0 ... 14] = '\ n'}, stdout); ')? – cremno

+0

Это действительно крутой ответ. Спасибо. кстати, я не понимаю, почему мой вопрос стал -4 пункта. – yasin

+0

причины для downvotes: (вероятности) 1) нет кода, чтобы показать, что вы уже пробовали, 2) ответ будет очень основан на мнениях 3) нет причин для попытки сэкономить несколько нажатий клавиш – user3629249

ответ

0

Вы можете сделать свою собственную функцию.

int PrintLines(int n) 
{ 
    int x; 
    for(x =0 ; x<n ; x++) 
    { 
     printf("\n"); 
    } 
    return 0; 
} 
+0

Не используйте этот метод для печати нескольких ''% ''или' '\ 0''. – chux

+0

Вы можете использовать 'fputs (" \ n ", stdout)', потому что никакого форматирования не выполняется. Или даже 'fputc ('\ n', stdout)', потому что это всего лишь один символ. –

+0

Вы имели в виду сделать свой возврат типа 'Int'? –

2

Вы можете просто использовать цикл:

for (int i = 0; i < 15; i++) { 
    printf("\n"); 
} 
0

Всегда можно сделать петлю между количеством новых линий, которые вы хотите и сделать печать.

for(int x=0; x<15; x++){ 
    printf("\n"); 
} 
5

C не имеет повторения строки оператора, но у него есть функция, вы можете использовать:

char newlines[16]; 

memset(newlines, '\n', 15); /* <-- this function */ 
newlines[15] = '\0'; 
fputs(newlines, stdout); 
+1

Использование puts не будет писать дополнительные \ n? –

+2

@ Mr.E, хороший улов. Я переключился на 'fputs()', который не должен этого делать. Мне просто не нравится использование '* printf()', когда на самом деле не выполняется форматирование. –

0

Звоните fputc() в петлю.

while (n>0) { 
    n--; 
    fputc('\n', stdout); 
} 
0

Использовать «точность». Практическая до небольшого количества (например, до 20 ниже)

int precision = 15; 
printf("%.*s", precision, "\n\n\n\n\n" "\n\n\n\n\n" "\n\n\n\n\n" "\n\n\n\n\n"); 
+0

Я чувствую, что это довольно крутой способ сделать что-то. Другие ответы с использованием цикла более практичны. –

Смежные вопросы