c语言程序,给源程序添加行号

编写程序给源程序文件DATA5612.CPP加上行号后储存到另一个文本文件DATA5612.TXT中。用记事本自行建立一个DATA5612.CPP文件,输入一些源程序进行... 编写程序给源程序文件DATA5612.CPP加上行号后储存到另一个文本文件DATA5612.TXT中。
用记事本自行建立一个DATA5612.CPP文件,输入一些源程序进行测试,存放在于程序相同的文件夹中。

请诸位帮帮忙,这个程序怎么写呀?还要详细的解析,这是这是做什么的,用到的知识是什么

谢谢!!!!感激不尽!!!
展开
 我来答
犬虫门心西安
2014-12-14 · TA获得超过163个赞
知道小有建树答主
回答量:124
采纳率:0%
帮助的人:109万
展开全部
#include<stdio.h>

void main(void)
{
FILE *fpIn; // 输入文件的指针

FILE *fpOut; // 输出文件的指针

char str[120]; // 用来存储从文件中读取出的”一行“字符串信息

int row = 1;

fpIn = fopen("data5612.cpp", "r"); // 以只读和文本格式打开data5612.cpp,这里的文件名无所谓大小写

fpOut = fopen("data5612.txt", "w"); // 以创建方式(也叫写方式)打开data5612.txt文件

fgets(str, 81, fpIn); // 从文件中读取一行信息,保存到str数组中。这里要注意的是这个81,一般情况下,编写文本格式文件的人,都习惯遇到行尾就敲回车,所以,一般情况下,文本文件一行最多80个字符。如果,一神高嫌行不够80个游手字符,这个函数会自动只读到'念腔\n'就结束了。
while(!feof(fpIn)) // 判断上一次fgets()是否正常(即,没有遇到文件尾部)

{

fprintf(fpOut, "%04d %s\n", row, str); // 在读入的每一行信息前,加入0000到9999的行号(应该够用了吧),呵呵呵呵

row++; // 行号加一

fgets(str, 81, fpIn); // 读取下一行

}

fclose(fpIn); // 关闭文件

fclose(fpOut);

}

程序已验证,木有问题。
furious_tauren
2014-12-14 · TA获得超过4055个赞
知道大有可为答主
回答量:1913
采纳率:100%
帮助的人:761万
展开全部
#include <stdio.h>

int main(void)
{
    int n = 1;
    char buf[1024];
    FILE *fp, *fp1;

    /* 打开文件,文件名必须大写 */
    fp= fopen("DATA5612.CPP", "r");
    if (!fp) 液枝{
        printf("No 'DATA5612.CPP' found.\n");
      吵盯  return -1;
    }

    fp1= fopen("DATA5612.TXT", "w");
    if (!fp) {
        printf("No 'DATA5612.TXT' found.\n");
        return -1;
    }

    /* 逐行读取 */
    while (fgets(buf, 1024, fp) > 0)
        fprintf(fp1, "%d. %s", n++, buf);

    fclose(fp);
    fclose(fp1);
    return 升埋和0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式