2016-04-02 29 views
1

Yeni başlayanlar olduğum için farklı etkinlikler deniyorum ve daha fazlasını öğrenmek istiyorum. Aynı satırdaki bir deseni yazdırmaya çalışıyorum kodum: kodum:C Konsolu - Aynı çizgideki yazdırma deseni

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.

Ancak onları yeni bir satıra almak yerine, yalnızca aynı satır boyunca genişletmek istedim. Biliyorum çünkü \n ama hepsini aynı hatta nasıl alacağımı bilmiyorum.

+2

. İlk önce alt yarısı için üst yarım ve ikinci baskı. – Himanshu

cevap

1

2 parçalı üst ve alt parçalara ayırabilirsiniz.

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

sonraki satıra imleci pozisyon almak ve bir sonraki satırından yazdırmayı başlayacak '\ n' kullanıyor:

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

alt yarısı kullanımını yazdırmak için:
üst yarısı kullanımını yazdırmak için problem hangisi.

+1

Teşekkür ederiz, test edildi ve çalışıyor – Vbobo

+0

@fark, hoşgeldiniz :) – Himanshu

0

Aradığınız sonuç aslında iki farklı çizgide iki baskının sonucudur. Dizeleri aynı döngüde arabelleklerle oluşturabilir veya yalnızca iki döngü kullanabilirsiniz. Bunun için döngüler için 2'ye ihtiyacınız var.

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

Bu da işe yarıyor, takdir ediyor ve ilginç bir yol – Vbobo