2016-04-02 23 views
1

私は初心者であり、もっと学びたいと思っています。同じ行にパターンを印刷しようとしています。コードはCコンソール - 同じ行にパターンを印刷

int main() 
{ 
    int numOfWiggles; 
    int count; 
    printf("Enter number of wiggles: "); 
    scanf("%d", &numOfWiggles); 
    printf("_"); 
    for (count=1; count<=numOfWiggles; count++) 
    { 
     printf("/\\ \n \\/ \r"); 
    } 
    printf("-"); 
} 

EDITED OUTです。

新しい行に表示するのではなく、パターンを同じ行だけに広げたいと思っています。 \nだから私はそれを知っていますが、私は同じ行にそれをすべて取得する方法がわかりません。

+2

これには2つのループが必要です。上半分を印刷し、下半分を印刷します。 – Himanshu

答えて

1

これを2つの部分に分けることができます。

for (count=1; count<=numOfWiggles; count++) 
{ 
    printf("/\\ "); //this will print /\ /\ /\ 
} 
printf("\n "); // go to next line 

下半分の使用を印刷するには:

for (count=1; count<=numOfWiggles; count++) 
{ 
    if(count == numOfWiggles) 
     printf(" \\/"); // this will print last \/ without space at the end 
    else 
     printf(" \\/ "); // this will print \/ \/ \/ 
} 

あなたが次の行にカーソル位置を取ると、次の行から印刷を開始します「\ n」を使用している上半分の使用を印刷する
これが問題です。

+1

ありがとう、テスト済みで、動作します – Vbobo

+0

@fark、あなたも大丈夫です:) – Himanshu

0

実際には、2つの異なる行に2つの印刷結果があります。同じループ内にバッファを使って文字列を構築することも、2つのループを使うこともできます。

for (count = 0; count < numOfWiggles; count++) 
{ 
    If (count == 0) 
     Printf ("_/\"); 
    Else 
     Printf (" /\"); 
    Printf (" _/n"); 
} 

for (count = 0; count < numOfWiggles; count++) 
{ 
    If (count == 0) 
     Printf (" \/"); 
    Else 
     Printf (" \/"); 
    Printf ("/n"); 
} 
+0

これはうまく動作します – Vbobo

関連する問題