编写一个程序,实现将c语言源程序中的注释全部删除

《程序设计基础-c语言》杨莉 刘鸿翔  
ISBN-978-7-03-032903-5  
p257
习题8

6.编写一个程序,实现将c语言源程序中的注释全部删除

#include
#include
#include
int main()
{
    FILE *fp,*fp1;
    char str[99]="",str1[99]="";
    int i,j,no=0;
    if((fp=fopen("file1.c","r"))==NULL)
    {
        printf("error\n");
        exit(0);
    }
    if((fp1=fopen("new.c","w"))==NULL)
    {
        printf("error\n");
        exit(0);
    }
    while(fgets(str,99,fp)!=NULL)
    {
        for(i=0;i<99;i++)
        {
            if(str[i]=='/' && str[i-1]=='/')
            {
                str[i-1]='\n';
                str[i]='\0';
            }
            if(str[i]=='*' && str[i-1]=='/')
            {
                str[i-1]='\0';
                no=1;
                fputs(str,fp1);
            }
            
            if(str[i]=='/' && str[i-1]=='*')
            {
                for(j=0;j<98-i;j++)
                {
                    str[j]=str[i+j+1];
                    str[j]='\0';
                    no=0;
                }
            }
        }
        if(no==0)
        {
            fputs(str,fp1);
        }
    }
    fclose(fp);
    fclose(fp1);
    return 0;
}

编写一个程序,实现将c语言源程序中的注释全部删除_第1张图片
编写一个程序,实现将c语言源程序中的注释全部删除_第2张图片

你可能感兴趣的:(#,专升本c语言)