设 char strl[10]="ABCDE",str2[10]="XYZ";则执行语句:

printf(”%d\n“,strlen(strcpy(str1,str2)));后的输出是
请详细说明,谢谢!

3 因为strcpy(str1,str2) (str1,str2是字符串或者是字符数组 ) 原来str1中为"ABCDE\0",strcpy(str1,str2)后变成了"XYZ\0E\0"。strlen()函数是记得是\0前面字符的个数即遇到\0 终止,所以此处的数值是3
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-07-17
输出3;因为strcpy(a,b) (a,b 为数组) 是吧b copy 给 a。其实是 变成XYZ\0所以a后面的东西就没了strlen就记到XYZ,也就是3。
第2个回答  2012-07-17
如果str1的长度足够的话,输出是(str1+str2)字符串的长度值8。原因:strcpy函数把str2的字符串放到str1后面并以null结尾。,strlen()函数求的叠加后的str1的长度。在输出语句中printf(”%d\n“,8)。
(说的不够明白还望见谅,下班!如果有追问明天再答复—_—)
第3个回答  2012-07-17
楼上诸位正解
第4个回答  2012-07-17
先执行内部的strcpy函数调用,把str2中的字符串拷贝到str1数组空间中,覆盖了str1中原来的字符串。
strcpy函数返回的是第一个参数的值,即str1的首地址,strlen函数根据str1数组的首地址,扫描str1数组,计算数组中字符串的长度。由于这时str1中的内容已经是“XYZ”,所以计算结果是3,最后屏幕上输出的结果是3。

设char strl[10]="ABCDE",str2[10]="XYZ";则执行语句:
3 因为strcpy(str1,str2) (str1,str2是字符串或者是字符数组 ) 原来str1中为"ABCDE\\0",strcpy(str1,str2)后变成了"XYZ\\0E\\0"。strlen()函数是记得是\\0前面字符的个数即遇到\\0 终止,所以此处的数值是3

关于strcpy?
main(){ char str1[10]="ABCDE";char str2 [10]="xyz";printf("%d",strlen(strcpy(str1,str2)));getch();} 不懂,看楼上的也看不懂,看楼下的解释清楚点吧?

strcpy函数的作用是复制字符串,strcpy(str1,str2)中str2会把str1覆盖...
例如 char strl[10],str2[]={"QWERT"};strcpy(str1,str2);运行后是str1由{\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0}变为{QWERT\\0\\0\\0\\0\\0} 就是吧str2中的QWERT复制到str1中,但是由于str1有10个长度 所以后面的全是"\\0"需要注意的就是1的长度必须大于2,目的是有足够的空间容纳2的东西;另...

C语言中strcpy(str1,str2)
程序如下:include <stdio.h> include <string.h> void main(){ char a[30]="abc";char b[10]="abcdef";puts(a);puts(b);printf("复制:\\n");strcpy(a+strlen(a),b);puts(a);} 因为 strl+strlen(str1) 的意思就是将指针移到这个字符数组的 \\0 位置 再往后面 复制字...

新手python小白练习题
str2=strl.replace( '-,a )ifstr2.isalnum():if str2[o].isdigit():print("该字符为非法变量名")else:print(“该字符为合法变量名")else:print("该字符为非法变量名”)elif 'notinstr1:ifstrl.isalnum():if str1[o].isdigit():print("该字符为非法变量名")else:print("该字符为合法...

09年4月自考计算机基础与程序设计试题及答案
A. puts (str1,str2)B. puts (str2)C. putchar (strl)D. putchar (str1,str2)12.下列关于函数的说明中不正确的是( )A. 函数名后面可以不要一对圆括号 B. 函数参数类型必须作说明 C. 函数形参个数可以是一个、多个或没有 D. 空函数被调用时不做任何工作 13.若有定义:int a...

20分求谭浩强的C程序设计基础习题
{char strl[]=“How do you do”,*p1=strl; strcpy(strlstrlen(strl)\/2,“es she”); printf(“%s 、n”,pl); } (10)以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。请填空。 main() {float x[1000],sum=0.0,ave,a; int ...

...调用形式为char*strchr(char*strl,char*str2),找出strl所指向的字...
首先,说明一下,对于从一个字符串中找另一个字符串的标准函数应该是strstr。strchr是从字符串中找字符char *strchr(char *str1, char ch);下面是strstr的模拟函数:char * my_strstr(const char *src,const char *substr){ char *p,*tt;if(src == NULL || substr == NULL)return (char *...

怎么用sql查询str(2009)
strl=find(str,'she'); \/*区分大小写,从str第1个字符开始査找,返回8*\/ str2=find(str,'she','i'); \/*不区分大小写,从str第1个字符开始査找,返回1 str3=find(str,'she '); \/*区分大小写,从str第1个字符开始査找she+空格,返回20*\/ str4=find(str,'she ','t');\/*区分...

全国2014年4月自考试题:计算机基础与程序设计
C.getchar(strl) D.putchar(strl) 13.设有下面程序,下面选项中正确的说法是 int d=10; main( ) { int a=3; Printf ("%d,%d\\n",a,d); } A.a是全局变量,d是全局变量 B.a是局部变量,d是全局变量 C.a是全局变量,d是局部变量 D.a是局部变量,d是局部变量 14.下面对C函数的描...

相似回答