Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /************************************/
- /** 20140930 Exam 02 **/
- /** Maker : Yan **/
- /** E-Mail : [email protected] **/
- /** Date : 2014/09/30 pm.11:30 **/
- /************************************/
- #include <stdio.h>
- #include <stdlib.h>
- int main(int argc, char const *argv[])
- {
- /* 先開啟檔案並設置寫入模式 */
- //FILE *檔案指標名稱(可自訂)
- FILE *fptr;
- /*fopen 為開啟檔案流,使用方式為:
- fopen("檔案名稱", "模式");
- 模式內容如下:
- "r" 讀取文字檔案
- "w" 新建文字檔案並寫入資料
- "a" 將資料附加在該文字檔案之後
- "rb" 讀取二進位檔
- "wb" 新建二進位檔並寫入資料
- "ab" 將資料附加在該二進位檔之後
- "r+" 讀取文字檔案並寫入資料
- "w+" 新建文字檔案並讀取、寫入資料
- "a+" 讀取文字檔案將附加資料在檔案最後
- "rb+" 或 "r+b" 讀取二進位檔並寫入資料
- "wb+" 或 "w+b" 新建二進位檔並讀取、寫入資料
- "ab+" 或 "a+b" 讀取二進位檔將附加資料在檔案最後 */
- fptr = fopen("output.txt", "w");
- //進行主程式
- while(1)
- {
- //輸入line number
- int line_number = 0;
- printf("input line numner: ");
- scanf("%d", &line_number);
- //對輸入做判斷,小於一視同結束
- if(line_number <= 0)
- break;
- //下列程式碼詳細講解請閱[http://pastebin.com/2hSuxsW8]
- for(int i = 1; i <= line_number; i++)
- {
- for(int j = 1; j <= line_number - i; j++)
- {
- printf(" ");
- /*fprintf = 做對檔案輸出動作,請原理與printf 相同
- 相異僅為printf 為輸出至「螢幕」,fprintf 為輸出至檔案
- fprintf 使用方式為:
- fprintf(檔案指標, "輸出內容", "輸出格式"); */
- fprintf(fptr, " ");
- }
- printf("*");
- fprintf(fptr, "*");
- for(int k = 2; k <= i; k++)
- {
- printf("**");
- fprintf(fptr, "**");
- }
- printf("\n");
- fprintf(fptr, "\n");
- }
- for(int i = line_number - 1; i > 0; i--)
- {
- for(int j = 1; j <= line_number - i; j++)
- {
- printf(" ");
- fprintf(fptr, " ");
- }
- printf("*");
- fprintf(fptr, "*");
- for(int k = 2; k <= i; k++)
- {
- printf("**");
- fprintf(fptr, "**");
- }
- printf("\n");
- fprintf(fptr, "\n");
- }
- }
- /* 關閉檔案流 */
- /*fclose 使用方式如下:
- fclose([檔案指標]); */
- fclose(fptr);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment