#include #include void sub_prg(int a) // print 1 to n * { int i; for(i=1; i<= a; i++) printf("*"); return; } int sum_prg(int a) // summary from 1 to n { int i; int total = 0; for(i=1; i<=a; i++) { total = total + i; } return total; } void sub_prgA(int a) { int i,j; for(i=1; i<=a; i++) { for(j=1; j<=i ; j++) { printf("*"); } printf("\n"); } } void sub_prgB(int a) { int i,j; for(i=a; i>0; i--) { for(j=1; j<=i ; j++) { printf("*"); } printf("\n"); } return; } void sub_prgC(int a) { sub_prgA(a); sub_prgB(a-1); return; } void print_STAR(int a, char *c) { int i; for(i=1; i<=a; i++) { printf(c); } return; } void sub_prgD(int a) { int i,j; for(i=a; i>0; i--) { print_STAR(i-1, " "); print_STAR(a-i+1,"*"); printf("\n"); } return; } void sub_prgE(int a) { int i,j; for(i=1; i<=a; i++) { print_STAR(a-i, " "); print_STAR(i*2-1,"*"); printf("\n"); } return; } void sub_prgF(int a) { int i,j; for(i=1; i<=a; i++) // 列印上半部 { print_STAR(a-i, " "); print_STAR(i*2-1,"*"); printf("\n"); } for (i=a-1; i>0; i--) // 列印下半部 { print_STAR(a-i, " "); print_STAR(i*2-1,"*"); printf("\n"); } return; } int main(int argc, char *argv[]) { int n = 0; int i,j=0; int sum_total = 0; printf("Please enter a integer: "); scanf("%d", &n); printf("\n--- 副程式#1 -印出**--\n"); sub_prg(n); // 呼叫副程式 printf("\n--- 副程式#2 (1 + ... n) ---\n"); sum_total = sum_prg(n); printf("Total = %d", sum_total); printf("\n--- 副程式 prg#A ---\n"); sub_prgA(n); printf("\n--- 副程式 prg#B ---\n"); sub_prgB(n); printf("\n--- 副程式 prg#C ---\n"); sub_prgC(n); printf("\n--- 副程式 prg#D ---\n"); sub_prgD(n); printf("\n--- 副程式 prg#E ---\n"); sub_prgE(n); printf("\n--- 副程式 prg#F ---\n"); sub_prgF(n); printf("\n"); system("PAUSE"); return 0; }