replace oldfile newfile oldword newword<回车>

命令如上  把旧文件中的旧单词替换成新单词  然后输入到新文件中去。我的问题是程序会一直往新文件里面打印字符串不会停止。

代码如下,希望有大大可以帮我解答一下。谢谢啦!

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <string.h>
 4 void main(int argc,char *argv[])
 5 {
 6     int ischar(FILE *in,char *a);//用来判断从此处开始是否有单词和要替换的匹配
 7     FILE *in,*out;
 8     char *o,*n;//o是老单词,n是新单词
 9     if(argc!=5)
10     {
11         printf("参数不对!\n");
12         exit(0);
13     }
14     if((in=fopen(argv[1],"r"))==NULL)
15     {
16         printf("指定文件有错!\n");
17         exit(0);
18     }
19     if((out=fopen(argv[2],"w"))==NULL)
20     {
21         printf("新文件打开有错!\n");
22         exit(0);
23     }
24     printf("success");
25     o=argv[3];//要被替换的单词
26     n=argv[4];//要用来替换的新单词
27     while(!feof(in))
28     {
29
30         if(ischar(in,o))
31         {
32           fputs(n,out);
33         }
34         else
35         {
36           fputc(fgetc(in),out);
37         }
38
39     }
40
41 }
42 int ischar(FILE *in,char *a)//判断从此处开始是否有单词和要替换的匹配
43 {
44       int n=strlen(a),x;
45       char b[20];//得到一个字符串进行比较
46       fgets(b,n+1,in);//这个时候in的指针已经往后移了n+1个了
47       x=(int)strlen(b);
48       if(x<0) return 0;
49       if(strcmp(b,a)==0)
50       {
51           printf("1");//为了方便分析
52           return 1;
53       }
54       else
55       {
56           fseek(in,-x,1);//指针移回去
57            printf("%d\n",x);//为了方便分析
58           return 0;
59       }
60 }

转载于:https://www.cnblogs.com/nearlyZhou/p/3489889.html

【求助】 有个问题 c语言单词替换问题相关推荐

  1. Bailian2944 单词替换【字符串流】

    2944:单词替换 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一个字符串,以回车结束(字符串长度<=100).该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区 ...

  2. 利用自动机识别c 语言单词,第03章 词法分析与有穷自动机(2).ppt

    <第03章 词法分析与有穷自动机(2).ppt>由会员分享,可在线阅读,更多相关<第03章 词法分析与有穷自动机(2).ppt(59页珍藏版)>请在人人文库网上搜索. 1.3. ...

  3. c语言作业 字符串替换,C语言字符串替换。解决方法

    当前位置:我的异常网» C语言 » C语言字符串替换.解决方法 C语言字符串替换.解决方法 www.myexceptions.net  网友分享于:2015-04-14  浏览:0次 C语言字符串替换 ...

  4. R语言缺失值替换:缺失的值(NA)替换每个分组最近的非缺失值

    R语言缺失值替换:缺失的值(NA)替换每个分组最近的非缺失值 目录 R语言缺失值替换:缺失的值(NA)替换每个分组最近的非缺失值

  5. Swift3.0语言教程替换子字符串

    Swift3.0语言教程替换子字符串 Swift3.0语言教程替换子字符串,替换子字符串其实就是将字符串中的子字符串删除,然后再进行添加.为了让这一繁琐的过程变的简单,NSString提供了替换子字符 ...

  6. LUA实现单词替换功能

    背景描述 编程或者文档处理过程, 经常遇到需要将一个单词修改为另外一个单词的情况, 例如 命名为 shall 修改 为 should. 使用工具实现, 则比较方便,不容易出错, 解放双手. 需求规格 ...

  7. Leetcode 648.单词替换

    单词替换 在英语中,我们有一个叫做 词根(root)的概念,它可以跟着其他一些词组成另一个较长的单词--我们称这个词为 继承词(successor).例如,词根an,跟随着单词 other(其他),可 ...

  8. 信息学奥赛一本通(1406:单词替换)

    1406:单词替换 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 9873     通过数: 5803 [题目描述] 输入一个字符串,以回车结束(字符串长度≤20 ...

  9. 单词替换(信息学奥赛一本通-T1406)

    [题目描述] 输入一个字符串,以回车结束(字符串长度≤200).该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写.现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串. ...

最新文章

  1. Linux执行可执行文件提示No such file or directory的解决方法
  2. ggplot2 图形排版:patchwork 包简单入门
  3. 真人语音朗读软件_才知道,手机还自带文字转语音功能,一键按下便可实现,网友:赞...
  4. SQL内连接和左连接的区别 - 使用SQLite演示
  5. 多用户MIMO系统中的天线选择技术和用户选择技术的MATLAB仿真
  6. Spring Cloud构建微服务架构(七)消息总线
  7. 论文阅读:超高分辨率图像中快速、准确的条码检测
  8. 数据中心部署气流遏制系统需要考虑的十大要素
  9. 实战 | WebMagic 爬取某保险经纪人网站经纪人列表之网站列表爬取
  10. 不到一秒卖出一部!荣耀9X系列国内销售29天破300万台
  11. Linux虚拟化KVM-Qemu分析(十)之virtio驱动
  12. win2008 有几个版本?区别是什么?
  13. vue cli4接入环信webIM
  14. 22071班(8月16日作业)
  15. Win10 Cortana 搜索框字体颜色
  16. Python数据分析基础技术之scikit-learn(史上最全面)
  17. 数值计算之 插值法(5)分段插值,埃尔米特插值
  18. “spoolsv.exe应用程序错误”的解决方法
  19. 基础版微信模板消息开发详解,附代码PHP
  20. 高性能永磁交流伺服电机系统控制策略

热门文章

  1. Atlas 血缘查询使用
  2. 性能测试+当当网搭建
  3. 机器学习-----朴素贝叶斯
  4. mysql权限管理实验_实验五 MYSQL权限与安全
  5. MEGA训练自己的数据集-docker
  6. 延续搭载虹膜识别技术 新发布的国美U7手机会让你满意吗?
  7. php判断移动端和pc端访问_PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
  8. nyoj55懒省事的小明
  9. 图像处理中激光散斑解释和处理方法
  10. STM32 ST-LINK 下载错误解决方法