#include #include #include int sub_sum(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; double START,END; START = clock(); //記錄程式開始時間 // 運算程式加在下面 printf("Please enter a integer: "); scanf("%d", &n); printf("\n--- 副程式 sub_sum (1 + ... n) ---\n"); sum_total = sub_sum(n); printf("Total = %d \n", 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"); END = clock(); // 記錄程式結束時間 printf("進行運算所花費的時間: %3.2f Second\n", ((END - START) / CLOCKS_PER_SEC)); system("PAUSE"); return 0; }