| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1119 人关注过本帖
标题:新人报到,有以下一个程序,不知其如何运行,还望各位懂的人指点
取消只看楼主 加入收藏
和规则决裂
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2013-9-13
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:5 
新人报到,有以下一个程序,不知其如何运行,还望各位懂的人指点


题目要求是实现两个字符串的连接,但不能用现成的C语言连接函数实现,要自己编写fun,以下是我复制过来的(fun里面是答案,这是一道设计题)


#include <stdio.h>
void fun(char p1[], char p2[])
{
    int i,j;
  for(i=0;p1[i]!='\0';i++)  ;  //这句我懂,就是p1[i]若不遇到字符串结束符号就继续进行循环
      for(j=0;p2[j]!='\0';j++)//这句就是上面的for的一部分了(2013-9-15 10:27:55今天又意识到昨天想错了,原来这个是单独出来的,因为上一句有一个分号;)
          p1[i++]=p2[j];//但是到了这句,我就不明白到底是怎么回事了,p2[j]赋值给了p1[i]之后,那还怎么连接呢?
   p1[i]='\0';//然后到了这句,怎么理解?  这几句是我重新编辑的,因为还没理解。时间为2013-9-14 18:23:34。高手请帮忙解答,谢谢!

}

main()
{    char s1[80], s2[40] ;void NONO ();

     printf("Enter s1 and s2:\n") ;
     scanf("%s%s", s1, s2) ;
     printf("s1=%s\n", s1) ;
     printf("s2=%s\n", s2) ;
     printf("Invoke fun(s1,s2):\n") ;
     fun(s1, s2) ;
     printf("After invoking:\n") ;
     printf("%s\n", s1) ;
     NONO() ;
}

void NONO ()
{/* 本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
  int i ;
  FILE *rf, *wf ;
  char s1[80], s2[40] ;

  rf = fopen("in.dat","r") ;
  wf = fopen("out.dat","w") ;
  for(i = 0 ; i < 10 ; i++) {
    fscanf(rf, "%s", s1) ;
    fscanf(rf, "%s", s2) ;
    fun(s1, s2) ;
    fprintf(wf, "%s\n", s1) ;
  }
  fclose(rf) ;
  fclose(wf) ;
}


特别是fun函数里面,p1[i++]=p2[j];这不是替换之意吗?替换之后还怎么连接,不过我运行之后居然是对的   - -!所以想知道怎么回事

[ 本帖最后由 和规则决裂 于 2013-9-15 10:28 编辑 ]
搜索更多相关主题的帖子: C语言 字符串 include color 
2013-09-13 19:52
和规则决裂
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2013-9-13
收藏
得分:0 
回复 2楼 yuccn
题目要求说不允许用那个函数的,就是要自己编fun函数
2013-09-13 20:29
和规则决裂
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2013-9-13
收藏
得分:0 
回复 4楼 小小程序猿
不是我写的,我菜鸟,刚开始学,这是试题上面的一道。我看了不明其意,就复制过来了,fun函数是要自己编的,我复制的是答案。
2013-09-14 18:12
和规则决裂
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2013-9-13
收藏
得分:0 
回复 5楼 pauljames
这是什么?
2013-09-14 18:13
和规则决裂
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2013-9-13
收藏
得分:0 
回复 7楼 embed_xuel
有这个“=”,我理解就是说右边的替换了左边的,就是赋值之后,左边的那个变量成了右边的。难道还有不是替换的情况?高手速速解答疑惑啊
2013-09-14 18:16
和规则决裂
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2013-9-13
收藏
得分:0 
回复 12楼 guhemeng
你这热闹凑得好啊!原来是这样子,最后还有一个结束终止符‘\0’.

我懂了!谢谢你的回答,十分都给你了!又懂了一个知识



注:你前天就回答了,我却一直不知道。因为我没看下一页(论坛文字有点小,我看它是故意为之,专门欺负我这种不戴眼镜的 ——!),所以直到今天结贴了才看到,真是不好意思啊!

[ 本帖最后由 和规则决裂 于 2013-9-16 23:13 编辑 ]
2013-09-16 23:10
快速回复:新人报到,有以下一个程序,不知其如何运行,还望各位懂的人指点
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016244 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved