00问答网
所有问题
char a[7]="abcdef" char b[4]="ABC" strcpy(a,b) printf("%c",a[5])答案是f,但是我觉得是/0啊,求解啊!
如题所述
举报该问题
其他回答
第1个回答 2012-05-17
strcpy(a,b);后,数组a中存放着:"ABC\0ef\0",a[4],a[5]的值并没有改变,即a[5]中存放的还是'f'。
第2个回答 2012-05-17
strcpy是把b拷贝到a中,def没有变化,a[5]仍然是f
追问
是不是指b黏贴到a中只是把b中的全部念黏贴到a中,剩下a中的多出来长度还是没有被覆盖的
追答
是这样的~当b结束的时候,向a中复制就结束了,不覆盖a中多余出来的字符
本回答被提问者采纳
第3个回答 2012-05-17
a[0]=A a[1]=B a[2]=C a[4]=d a[5]=e a[5]=f 你得明白这个函数的用法
相似回答
以下程序段的输出结果是___.(注:ㄩ表示空格
)
char
a[7]=
"
abcdef
...
答:
答案是字符e,
strcpy(a,b);
意思是将字符串b拷贝到字符串a中,b的总共长度才4(字符串结尾都会有一个结束字符’\0‘),所以拷贝替换的只是a的前4个字符,第五个字符以后的字符并没有变。
printf(
“%c”,
a[4]
);...
...="
abcdef
"
char
b[4]=
"
ABC
"
strcpy(a,b)
printf(
"%c",
a[
5])答案...
答:
strcpy(a,b);
后,数组a中存放着:"
ABC
\0ef\0",
a[4]
,a[5]的值并没有改变,即a[5]中存放的还是'f'。
char
a[7]=
“
abcdef
”
, b[4]=
“
ABC
”
;
strcpy(a,b)
答:
若有以下定义和语句: char
a[7]= “
abcdef”, b[4]=
“ABC”
; strcpy(a,b); 则a[5]的值是'f'。因为执行strcpy(a,b);时,a数组中被覆盖的元素有4个,即'A','B','C','\0',所以,a[4]仍是'e'...
...
a[7]=
"
abcdef
"
;char
b[4]=
"
ABC
"
;strcpy(a,b);printf(
"%c",a...
答:
是f,这个函数是把数组b中的元素拷贝到a数组中,由于遇到结束字符就结束了,a所以数组中的前三个字母被b数组代替了,但是后面三个不会变,在这有可能误认为输出是e,是因为忽略了a数组下表是从0开始的,所以a[5]是指...
大家正在搜
相关问题
char a[7]="abcdef" char b[4]="...
. 若有以下定义和语句: char a[7]= “abcde...
定义char a[7]= "abcdef"; char b[...
以下程序段的输出结果是_____.(注:ㄩ表示空格) cha...
char a[]="ABCDEF"; char a[]="{...
若有以下定义和语句: char a[7]= “abcdef”...
在c语言中char a[]={'a','b','c'}和ch...
C语言中 char a[4]; a[4]={'a','b',...