strcpy(字符数组,字符串)进行复制时,连同结束标志’/0’一起复制。
第1题:
下列程序中的函数strcpy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。#include <stdio.h>#include <string.h>void 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);}
第2题:
A、strlen
B、strcmp
C、strcat
D、strcpy
第3题:
下列程序中的函数 strcpy2() 实现字符串两次复制 , 即将 t 所指字符串复制两次到 s 所指内存空间中 ,合并形成一个新的字符串。例如,若 t 所指字符串为 efgh ,调用 strcpy2 后, s 所指字符串为 efghefgh 。请填空。
#include <stdio.h>
#include <string.h>
void 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);
}
第4题:
有以下程序:以下叙述中正确的是( )。
A.在给P和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3
B.由于P数组中没有字符串结束符,长度不能确定;但q数组中字符长度为3
C.由于q数组中没有字符串结束符,长度不能确定;但P数组中字符长度为3
D.由于P和q数组中没有字符串结束符,故长度都不能确定
第5题:
根据程序中的注释将下列缺失部分补充完整。
class A{
char*a;
public:
A():a(0){}
A(char*aa){ //把aa所指字符串复制给a所指向的存储空间
a= 【 】 char[strlen(aa)+1];
strcpy(a,aa);
}
~A(){delete[]a;}
}
第6题:
函数调用strcat(strcpy(str1,str2),str3)的功能是( )。
A.将字符串str1复制到字符串str2中后再连接到字符串str3之后
B.将字符串str1连接到字符串str2之后再复制到字符串str3之后
C.将字符串str2复制到字符串str1后再将字符串str3连接到字符串str1之后
D.将字符串str2连接到字符串str1之后再将字符串str1复制到字符串str3中
第7题:
以下程序中函数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.abed
B.abba
C.abc
D.abca
第8题:
下列关于字符串的说法中错误的是
A.在C语言中,字符串是借助于字符型一维数组来存放的,并规定以字符′\0′作为字符串结束标志
B.′\0′作为标志占用存储空间,计入串的实际长度
C.在表示字符串常量的时候不需要人为在其末尾加入′\0′
D.在C语言中,字符串常量隐含处理成以′\0′结尾
第9题:
编写 strcpy函数
已知 strcpy函数的原型是
char *strcpy(char *strDest, const char *strSrc);
其中 strDest 是目的字符串,strSrc 是源字符串。
(1)不调用 C++/C 的字符串库函数,请编写函数 strcpy
(2)strcpy能把 strSrc 的内容复制到 strDest,为什么还要 char * 类型的返回值?
第10题:
有以下程序(strcpy为字符串复制函数,strcat为字符串连接函数): #include<stdio.h> #include<string.h> main( ) {char a[10]="abc",b[10]="012",c[10]="xyz"; strcpy(a+1,b+2); puts(strcat(a,c+1)); } 程序运行后的输出结果是( )。
A.al2xyz
B.12yz
C.a2yz
D.bc2yz