Trong ví dụ này, bạn sẽ học cách in một nửa hình chóp, hình chóp ngược, hình chóp đều, hình chóp toàn phần ngược, tam giác Pascal và tam giác Floyd trong Lập trình C.
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình C sau:
- Câu lệnh C if… else
- C cho Vòng lặp
- C while và do… while Loop
- C nghỉ và tiếp tục
Đây là danh sách các chương trình bạn sẽ tìm thấy trong trang này.
C Ví dụ |
---|
Một nửa kim tự tháp của * |
Một nửa kim tự tháp số |
Một nửa kim tự tháp của bảng chữ cái |
Một nửa kim tự tháp ngược của * |
Một nửa kim tự tháp ngược của số |
Kim tự tháp đầy đủ của * |
Kim tự tháp đầy đủ các con số |
Kim tự tháp đầy đủ ngược của * |
Tam giác Pascal |
Tam giác Floyd |
Ví dụ 1: Một nửa Kim tự tháp của *
* * * * * * * * * * * * * * * *
Chương trình C
#include int main() ( int i, j, rows; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = 1; i <= rows; ++i) ( for (j = 1; j <= i; ++j) ( printf("* "); ) printf(""); ) return 0; )
Ví dụ 2: Một nửa kim tự tháp của các con số
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Chương trình C
#include int main() ( int i, j, rows; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = 1; i <= rows; ++i) ( for (j = 1; j <= i; ++j) ( printf("%d ", j); ) printf(""); ) return 0; )
Ví dụ 3: Một nửa kim tự tháp của bảng chữ cái
ABBCCCDDDDEEEEE
Chương trình C
#include int main() ( int i, j; char input, alphabet = 'A'; printf("Enter an uppercase character you want to print in the last row: "); scanf("%c", &input); for (i = 1; i <= (input - 'A' + 1); ++i) ( for (j = 1; j <= i; ++j) ( printf("%c ", alphabet); ) ++alphabet; printf(""); ) return 0; )
Ví dụ 4: Nửa hình chóp ngược của *
* * * * * * * * * * * * * * * *
Chương trình C
#include int main() ( int i, j, rows; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = rows; i>= 1; --i) ( for (j = 1; j <= i; ++j) ( printf("* "); ) printf(""); ) return 0; )
Ví dụ 5: Một nửa hình chóp ngược của các số
1 2 3 4 5 1 2 3 4 1 2 3 1 2 1
Chương trình C
#include int main() ( int i, j, rows; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = rows; i>= 1; --i) ( for (j = 1; j <= i; ++j) ( printf("%d ", j); ) printf(""); ) return 0; )
Ví dụ 6: Kim tự tháp đầy đủ của *
* * * * * * * * * * * * * * * * * * * * * * * * * * * *
Chương trình C
#include int main() ( int i, space, rows, k = 0; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = 1; i <= rows; ++i, k = 0) ( for (space = 1; space <= rows - i; ++space) ( printf(" "); ) while (k != 2 * i - 1) ( printf("* "); ++k; ) printf(""); ) return 0; )
Ví dụ 7: Kim tự tháp đầy đủ các số
1 2 3 2 3 4 5 4 3 4 5 6 7 6 5 4 5 6 7 8 9 8 7 6 5
Chương trình C
#include int main() ( int i, space, rows, k = 0, count = 0, count1 = 0; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = 1; i <= rows; ++i) ( for (space = 1; space <= rows - i; ++space) ( printf(" "); ++count; ) while (k != 2 * i - 1) ( if (count <= rows - 1) ( printf("%d ", i + k); ++count; ) else ( ++count1; printf("%d ", (i + k - 2 * count1)); ) ++k; ) count1 = count = k = 0; printf(""); ) return 0; )
Ví dụ 8: Hình chóp tròn ngược của *
* * * * * * * * * * * * * * * * * * * * * * * * * * * *
Chương trình C
#include int main() ( int rows, i, j, space; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = rows; i>= 1; --i) ( for (space = 0; space < rows - i; ++space) printf(" "); for (j = i; j <= 2 * i - 1; ++j) printf("* "); for (j = 0; j < i - 1; ++j) printf("* "); printf(""); ) return 0; )
Ví dụ 9: Tam giác Pascal
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1
Chương trình C
#include int main() ( int rows, coef = 1, space, i, j; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = 0; i < rows; i++) ( for (space = 1; space <= rows - i; space++) printf(" "); for (j = 0; j <= i; j++) ( if (j == 0 || i == 0) coef = 1; else coef = coef * (i - j + 1) / j; printf("%4d", coef); ) printf(""); ) return 0; )
Ví dụ 10: Tam giác Floyd.
1 2 3 4 5 6 7 8 9 10
Chương trình C
#include int main() ( int rows, i, j, number = 1; printf("Enter the number of rows: "); scanf("%d", &rows); for (i = 1; i <= rows; i++) ( for (j = 1; j <= i; ++j) ( printf("%d ", number); ++number; ) printf(""); ) return 0; )