c语言编程输出指定文本,c语言中如何向一个.txt文件的指定行输入内容?

只讲个大概未必能解决你的问题,举手之劳,帮你写了。

由于没有说明怎么处理a.txt原来的第4行和第10行,这里分别将它们顺次移到下一行。一个完整的c程序如下,在win-tc和Dev-c++下已运行通过。

#include

#include

#include

#define N 255 /* 假定文章的总行数不超过255,可更改 */

main()

{

int i=0,max;

char s[N][101],s1[101],s2[101],*p,*q="a.txt";

FILE *fp;

printf("Please input string1(not more than 100 letters):\n");

gets(s1);

printf("Please input string2(not more than 100 letters):\n");

gets(s2);

if ((fp=fopen("a.txt","r+"))==NULL)

{ printf("Open file %s error!",q);

getch();

exit(0);

}

while(i<3&&fgets(s[i],101,fp)!=NULL)  /*按行读3行原文章*/

{ p=strchr(s[i],'\n');

if(p) *p='\0'; /*消除每行最后的回车符*/

i++;

}

strcpy(s[i++],s1); /*插入到第四行*/

while(i<9&&fgets(s[i],101,fp)!=NULL) /*继续读原文章*/

{ p=strchr(s[i],'\n');

if(p) *p='\0';

i++;

}

strcpy(s[i++],s2); /*插入到第十行*/

while(i

{ p=strchr(s[i],'\n');

if(p) *p='\0';

i++;

}

max=i;/* max为文章实际的总行数 */

rewind(fp);

for(i=0;i

{ fprintf(fp,"%s\n",s[i]); /*输出到文件a.txt中*/

printf("%s\n",s[i]);

}

fclose(fp);

getch();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值