请编写函数fun,其功能是将形参s所指字符串放入形参a所指的字符数组中,使a中存放同样的字符串。说明:不得使用系统提供的字符串函数。 注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun指定的部位填入所

admin2016-12-06  39

问题 请编写函数fun,其功能是将形参s所指字符串放入形参a所指的字符数组中,使a中存放同样的字符串。说明:不得使用系统提供的字符串函数。
    注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun指定的部位填入所编写的若干语句。
试题程序:
1  #include<stdio.h>
2  #define N 20
3  void NONO();
4  void fun(char*a,char*s)
5    {
6
7  }
8  main()
9  {char s1[N],*s2=’’abcdefghijk’’;
10  fun(s1,s2);
11  printf(’’%s\n’’,s1);
12   printf(’’%s\n’’,s2);
13    NONO();
14  }
15  void NONO()
16  (/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
17  FILE * fp,*wf;
18    int i;
19    char s1[256],s2[256];
20  fp=fopen(’’in.dat’’,’’r’’);
21    wf=fopen(’’out.dat’’,’’w’’);
22    for(i=0;i<10;i++){
23   fgets(s2,255,fp);
24    fun(s1,s2);
25    fprintf(wf,’’%s’’,s1);
26    }
27  fclose (fp);
28   fclose(wf);
29  }

选项

答案1 void fun(char*a,char *s) 2 {while(*s!=’\0’) 3 {* a=*s; 4 a++; 5 s++; 6 } 7 *a=’\0’; 8 }

解析 要将s所指的字符串存入a所指的字符串中,程序要求不能使用系统提供的字符串函数,本题可以使用循环语句,依次取出a所指字符串中的元素,将其存入s所指的字符串中,最后为s所指的字符串添加结束标识’\0’。
转载请注明原文地址:https://jikaoti.com/ti/wLi0FFFM
0

最新回复(0)