网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)

编写 strcpy函数

已知 strcpy函数的原型是

char *strcpy(char *strDest, const char *strSrc);

其中 strDest 是目的字符串,strSrc 是源字符串。

(1)不调用 C++/C 的字符串库函数,请编写函数 strcpy

(2)strcpy能把 strSrc 的内容复制到 strDest,为什么还要 char * 类型的返回值?


参考答案

更多 “ 编写 strcpy函数已知 strcpy函数的原型是char *strcpy(char *strDest, const char *strSrc);其中 strDest 是目的字符串,strSrc 是源字符串。(1)不调用 C++/C 的字符串库函数,请编写函数 strcpy(2)strcpy能把 strSrc 的内容复制到 strDest,为什么还要 char * 类型的返回值? ” 相关考题
考题 若有定义 :char *x="abcdefghi"; ,以下选项中正确运用了 strcpy 函数的是A)char y[10]; strcpy(y,x[4]);B)char y[10]; strcpy(++y,x[1]);C)char y[10],*s; strcpy(s=y+5,x);D)char y[10],*s; strcpy(s=y+1,x+1);

考题 下列程序中的函数 strcpy2() 实现字符串两次复制 , 即将 t 所指字符串复制两次到 s 所指内存空间中 ,合并形成一个新的字符串。例如,若 t 所指字符串为 efgh ,调用 strcpy2 后, s 所指字符串为 efghefgh 。请填空。#include stdio.h#include string.hvoid strcpy2(char *s,char *t){ char *p=t;while(*s++=*t++);s= 【 1 5 】 ;while( 【 1 6 】 =*p++);}main(){ char str1[100]="abcd",str2[]="efgh";strcpy2(str1 ,str2); printf("%s\n",str1);}

考题 以下与库函数strcpy(char *p, char *q)功能不相等的程序段是()。 A.strcpy1(char *p, char *q){ while ((*p++=*q++)!='\0')}B.strcpy2( char *p, char *q){ while((*p=*q)!='\0'){p++ q++}}C.strcpy3(char*p, char *q){ while (*p++=*q++)}D.strcpy4(char *p, char *q){ while(*p)*p++=*q++}

考题 下列程序中的函数strcpy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。#include stdio.h#include string.hvoid strcpy2(char *s,char *t){char *p=; while(*s++=*t++); s=s-1; while(=*p++);}main(){char str1[100]="abcd",str2[]="efgh"; strcpy2(str1,str2); printf("%s\n",strl);}

考题 若有定义: char *st= "how are you "; ,下列程序段中正确的是A.char a[11], *p; strcpy(p=a+1, ,下列程序段中正确的是A.char a[11], *p; strcpy(p=a+1,st[4]);B.char a[11]; strcpy(++a, st);C.char a[11]; strcpy(a, st);D.char a[], *p; strcpy(p=a[1],st+2);

考题 若有定义:char *x="abcdefghi";,以下选项中正确运用了strcpy函数的是______。A.char y[10]; strcpy(y,x[4]);B.char y[10]; strcpy(++y,x[1]);C.char y[10],*s; strcpy(s=y+5,x);D.char y[10],*s; strcpy(s=y+1,x+1);

考题 ( 14 )补充完整下面的类定义:class XCH{char* a;public:XCH ( char* as ) { // 构造函数a=new char[strlen ( aa ) +1];strcpy ( a,aa ) ;}XCH perator= ( const XCH x ) // 重载赋值函数Delele []a;A=new char[strlen ( x.a ) +l];strcpy ( a, x .a )【 14 】 ;}~XCH () {delete []a;}};

考题 若有下列说明,则( )不是对strcpy库函数的正确的调用。strcpy库函数用于复制一个字符串:char*strl="abcd",str2[10],*str3="hijklmn",*str4[2],*str5="aaaa";A.languageB.lnugC.有语法错误D.lang

考题 补充完整下面的类定义:class XCH{char*a;public:XCH(char*a A) { //构造函数a=new char[strlen(aA) +1];strcpy(a,aA) ;}XCHoperator=(const XCHx){//重载赋值函数delete[ ]a;a=new char[strlen(x.A) +1];strcpy(a,x.A) ;______;}~XCH( ){delete[ ]a;}};

考题 设有语句:char str1[]="string",str2[8],*str3,*str4="string";,则下列对库函数strcpy调用不正确的是A.strcpy(str1,"Hello1");B.strcpy(str2,"Hello2");C.strcpy(str3,"Hello3");D.strcpy(str4,"Hell04");

考题 阅读下列函数说明和C函数,将应填入(n)处的字句写在对应栏内。[函数2.1说明]函数strcpy的功能是将字符串str2的内容复制到字符申str1。[函数2.1](1) strcpy (char *slr1, const char *str2){ char * temp;while( * str2!='\0') *cp++ =(2);(3)='\0';return str1;}[函数2.2说明]函数int strcmp(const char *str1, const char *str2)的功能是按字典序比较两个字符串str1和str2的大小。当str1<str2时返回-1,当str1>str2时返回1,否则返回0。[函数2.2]int strcmp(const char *str1, const char *str2){ while( *str1= =* str2) {if(* s1= =(4)) return 0;s1++;(5);}if( *str1<*str2) return -1;return 1;}

考题 若有以下说明,则( )不是对strcpy库函数正确的调用。strcpy库函数用于复制一个字符串:char*strl=abCd,str2[10],*str3=hijklmn,*str4[2],*str5=aaaa;A.strcpy(str2,strl)B.strcpy(str3,strl)C.strcpy(strl,str2)D.strcpy(str5,strl)

考题 请编写能直接实现char * strcpy(char * pstrDest,const char * pstrSource)函数功能的代码。

考题 以下程序中函数scmp功能是返回形参指针s1和s2所指字符串中较小字符串的首地址。#includ<string. h>char *scmp(char *s1,char *s2){ if(strcmp(s1,s2)<0) return(s1); else return(s2);}main(){ int i;char string[20],str[3][20]; for(i=0;i<3;i++) gets(str[i]); strcpy(string,scmp(str[0],str[1])); //库函数 strcpy 对字符串进行复制 strcpy(string,scmp(stfing,str[2])); puts(string); }若运行时依次输入: abed、abba 和abc三个字符串,则输出结果为( )。A.abedB.abbaC.abcD.abca

考题 补充完整下面的类定义:class XCH{char*a:public:XCH(char球an){ //构造函数a=new char[strlen(aft)+1];strcpy(a,aA);}XCHoperator=(const XCHx){ //重载赋值函数delete[]a;a=new char[strlen(X.A)+1];strcpy(a,x.A);【 】}一XCH(){delete[]a;}};

考题 输入二个 64 位的十进制数,计算相乘之后的乘积已知 strcpy 函数的原型是:char * strcpy(char * strDest,const char * strSrc);1.不调用库函数,实现strcpy 函数。2.解释为什么要返回char *。

考题 已知strcpy 的函数原型:char *strcpy(char*strDest, const char *strSrc)其中strDest 是目的字符串,strSrc 是源字符串。不调用C++/C 的字符串库函数,请编写函数strcpy。

考题 设有语句:char str1[]="string", str2[8], *ste3, *str4="string";,则下列不是对库函数 strcpy的正确调用的是______。A.strcpy(str1,"HELLOI");B.strcpy(str2,"HELLO2");C.strcpy(str3,"HELLOY");D.strcpy(str4,"HELLO4");

考题 库函数strcpy用以复制字符串,若有以下定义和语句: char str1[]="china",str2[10],*str3,*str4="china"; 则对库函数strcpy的正确的调用是_______。A.strcpy(strl,"people");B.strcpy(str2,"people");C.strcpy(str3,"people");D.strcpy(str4,"people");

考题 有以下程序(strcpy为字符串复制函数,strcat为字符串连接函数): #includestdio.h #includestring.h main( ) {char a[10]="abc",b[10]="012",c[10]="xyz"; strcpy(a+1,b+2); puts(strcat(a,c+1)); } 程序运行后的输出结果是( )。A.al2xyzB.12yzC.a2yzD.bc2yz

考题 若有下列说明,则( )不是对strcpy库函数的正确的调用。strcpy库函数用于复制一个字符串:char*str1="abcdt",str2 [10],*str3="hijklmn",*str4[2],*str5="aaaa";A.strcpy(str2,str1)B.strcpy(str3,str1)C.strcpy(str4,str1)D.strcpy(str5,str1)

考题 若有定义:char*st="how are you";下列程序段中正确的是A.char a[11],*p;strcpy(p=a+1,st[4]);B.char a[11];strcpy(++a,st);C.char a[11];strcpy(a,st);D.char a[],*p;strcpy(p=a[1],st+2);

考题 以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址。 #include <stdio.h> #include <string.h> char *scmp(char*s1,char*s2) { if(strcmp(s1,s2)<0) return(s1); else return(s2); } main() { int i; char string[20],str[3][20]; for(i=0;i<3;i++) gets(str[i]); strcpy(string,scmp(str[0],str[1])); /*库函数strcpy对字符串进行复制*/ strcpy(string,scmp(string,str[2])); printf("%s\n",string); } 若运行时依次输入:abcd、abba和abc三个字符串,则输出结果为( )。A.abcdB.abbaC.abcD.baca

考题 设有以下语句:  char str1[]= “string”,str2[8],*str3,*str4= “ string”;      则不能对库函数strcpy(复制字符串)的正确调用的是()A、strepy(str1,“HELLO1”);B、strepy(str2,“HELL02”);C、strcpy(str3, “HELL03”)D、strcpy(str4, “HELLO4”);

考题 字符串的处理函数strcpy是系统定义的,作用是进行字符串拷贝,两个参数,返回值为char*。

考题 以下与库函数strcpy(char*p1,char*p2)功能不相等的程序段是()A、strcpyl(char*p1,char*p2){while((p1++=p2++)!=’/0’);}B、strcpy2(char*pl,char*p2){while((*p1=*p2)!=’/0’)pl++,p2++;}C、strcpy3(char*pl,char*p2){while((*p1++=*p2++);)D、strcpy4(char*p1,char*p2){whi1e(*p2)*pl++=*p2++;}

考题 判断题字符串的处理函数strcpy是系统定义的,作用是进行字符串拷贝,两个参数,返回值为char*。A 对B 错