为指定c 语言源程序添加行号,将合法 C 源程序每行前加上行号并删除其所有注释...

#includeint main(void)

{

char s1[199],row_number[4];

int n, i, j, count,k;

FILE *fp1, *fp2,*fp3;

if( (fp1 = fopen( "delete_test.c", "r" )) == NULL )

{

printf("File open error!\n");

exit(0);

}

if( (fp2 = fopen( "new_test.c", "w" )) == NULL )

{

printf("File open error!\n");

exit(0);

}

while( !feof(fp1) )

{

count = 1;

fgets(s1, 199, fp1);

n = strlen(s1);

for( i = 1; i < n; i++ )

{

if( s1[i] == '/' && s1[i-1] == '/' )

{

s1[i-1] = '\n';

s1[i] = '\0';

fputs( s1, fp2 );

count = 0;

break;

}

if( s1[i] == '*' && s1[i-1] == '/' )

{

s1[i-1] = '\n';

s1[i] = '\0';

fputs( s1, fp2 );

count = 0;

break;

}

if( s1[i] == '/' && s1[i-1] == '*' )

{

for( j = 0; j < n-i; j++ )

s1[j] = s1[ j + i + 1];

s1[j] = '\0';

fputs( s1, fp2 );

count = 0;

break;

}

}

if(count)

fputs(s1, fp2);

}

if(fclose(fp1))

{

printf( "Can not close the file!\n" );

exit(0);

}if(fclose(fp2))

{

printf( "Can not close the file!\n" );

exit(0);

}

fp2 = fopen("new_test.c","r");

fp3 = fopen("new_test_add.c","w");

k=1;

while(fgets(s1,199,fp2)!=NULL)

{

fprintf(fp3,"[%2d] ",k);

fputs(s1,fp3);

k++;

}

if(fclose(fp2))

{

printf( "Can not close the file!\n" );

exit(0);

}if(fclose(fp3))

{

printf( "Can not close the file!\n" );

exit(0);

}

return 0;

}

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值