第十八週專案實踐3.1(3)程式設計處理c程式碼
阿新 • • 發佈:2019-01-08
/****************************************************** Copyright (c) 2016,煙臺大學計算機學院 All rights reserved. 作者:張明明 完成日期:2016年12月31日 版本號:v1.0 功能描述:使程式中的所有左花括號“{”和右花括號“}”都單獨 佔一行,新程式儲存到另一個.c檔案中,並在螢幕上顯示處理 過的程式,顯示時加上行號。 輸入引數:*fp-程式 *new-讀入未更改的程式 *new1-寫入更改後的程式 返回引數:無 其他說明:無 *******************************************************/ #include <stdio.h> #include <stdlib.h> int main() { char c1,c2,new[1000]; FILE* fp; FILE* fnew; FILE* fnew1; int n=1; fp=fopen("m.c","r"); if(fp==NULL) printf("不能開啟檔案\n"); else { printf("開啟檔案成功\n"); fnew=fopen("new.c","w"); if(fnew==NULL) printf("第二個未檔案開啟成功\n"); else { printf("第二個成功開啟\n"); while(!feof(fp)) { c2=fgetc(fp); if((c2=='{'||c2=='}')&&c1!='\n') fputc('\n',fnew); if((c1=='{'||c1=='}')&&c2!='\n') fputc('\n',fnew); fputc(c2,fnew); c1=c2; } } fclose(fp); fclose(fnew); } fnew1=fopen("new.c","r"); if(fnew1==NULL) printf("不能開啟檔案\n"); else { printf("開啟檔案成功\n"); while(!feof(fnew1)) { fgets(new,999,fnew1); printf("%d\t%s\n",n,new); n++; } } fclose(fnew1); return 0; }