Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

โปรแกรม C วาดรูปธงชี้ (Arrow Star Pattern)

ได้รับจำนวน n วาดรูปธงชี้ (Arrow) ด้วยดอกจัน * ความสูงสูงสุด n ดอกจัน

ตัวอย่าง n=4

   *
  **
 ***
****
 ***
  **
   *

ตัวอย่าง n=3

  *
 **
***
 **
  *

แนวทาง

  • รับค่า n
  • ส่วนบน: พิมพ์ช่องว่าง n-i แล้วตามด้วย * จำนวน i (i=1 ถึง n)
  • ส่วนล่าง: พิมพ์ช่องว่าง i-1 แล้วตามด้วย * จำนวน n-i+1 (i=2 ถึง n)

อัลกอริทึม

Start
ฟังก์ชัน arrow(int num):
    // ส่วนบน
    for i = 1 ถึง num:
        for j = i ถึง num-1: print space
        for j = i ถึง num: print *
        newline
    // ส่วนล่าง
    for i = 2 ถึง num:
        for j = 1 ถึง i-1: print space
        for j = 1 ถึง i: print *
        newline

main(): num = 4 เรียก arrow(num)
Stop

โค้ดตัวอย่าง

#include <stdio.h>

int arrow(int num) {
    int i, j;
    // ส่วนบน
    for (i = 1; i <= num; i++) {
        for (j = i; j < num; j++) printf(" ");
        for (j = i; j <= num; j++) printf("*");
        printf("\n");
    }
    // ส่วนล่าง
    for (i = 2; i <= num; i++) {
        for (j = 1; j < i; j++) printf(" ");
        for (j = 1; j <= i; j++) printf("*");
        printf("\n");
    }
    return 0;
}

int main() {
    int num = 4;
    arrow(num);
    return 0;
}

ผลลัพธ์

   *
  **
 ***
****
 ***
  **
   *