编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。 例如,分别输入下面两个字符串: FirstString-- SecondString 程序输出

admin2013-06-12  33

问题 编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。
    例如,分别输入下面两个字符串:
    FirstString--
    SecondString
    程序输出:
    FirstStdng--SecondString
    注意:部分源程序在文件PROGl.C文件中。
    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
void fun(char p1[],char p2[])
{
}
main()
{  char s1[80],s2[40];void NONO();
    printf("Enter s1 and s2:\n");
    Scarlf("%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;
  FTLE*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);
}

选项

答案char*p=p1; while(*p)p++; while(*p2) *p++=★p2++; *p=0;

解析 (1)先求出串1的元素个数。
    (2)然后把串2的元素放到串l最后的位置,依次把串2中的所有字符全部放到串1之后。
转载请注明原文地址:https://kaotiyun.com/show/LgJp777K
0

最新回复(0)