|

楼主 |
发表于 2020-6-1 22:44:26
|
显示全部楼层
- #include <stdio.h>
- #include <stdlib.h>
- void main()
- {
- FILE* fp1, * fp2;
- void delcomm(FILE* fp1, FILE* fp2);
- char source[80], target[80];
- printf("Input source file name: ");
- gets(source);
- printf("Input target file name: ");
- gets(target);
- if ((fp1 = fopen(source, "r")) == NULL)
- {
- printf("Can't open FILE.\n");
- exit(0);
- }
- if ((fp2 = fopen(target, "w")) == NULL)
- {
- printf("Can't create target file.\n");
- exit(0);
- }
- delcomm(fp1, fp2);
- fcloseall();
- }
- void delcomm(FILE* fp1, FILE* fp2)
- {
- int c, i = 0;
- while (((c = fgetc(fp1)) != EOF))
- if (c == '\n')
- fprintf(fp2, "\n");
- else
- switch (i)
- {
- case 0: if (c == '/') i = 1;
- else fprintf(fp2, "%c", c);
- break;
- case 1: if (c == '*') i = 2;
- else
- {
- fprintf(fp2, "/%c", c);
- i = 0;
- }
- break;
- case 2: if (c == '*') i = 3;
- break;
- case 3: i = (c == '/') ? 0 : 2;
- break;
- }
- }
复制代码 |
|