若有定义:char*st="how are you";,下列程序段中正确的是

13 查阅

若有定义:char*st="how are you";,下列程序段中正确的是

A.chara[11],*p;strcpy(p=a+1,&st[4]);

B.chara[11];strcpy(++a,st);

C.chara[11];strcpy(a,st);

D.chara[],*p;strcpy(p=&a[1],st+2);

参考答案:

A解析: 本题综合考查字符数组的赋值和strepy函数的用法。C语言不允许用赋值表达式对字符数组赋值,如下面的语句就是非法的:strl=“China”,如果想把“Chi- na”这5个字符放到数组strl中,除了逐个输入外,还能使用strepy函数,该函数的功能是将一个字符串复制到一字符数组中。例如:strepy(strl,“China”)或strcpy(strl,str2);注意,不能企图用以下语句来实行赋值(将str2的值传给strl):str1=str2;不能用赋值语句将一个字符串常量或字符数组直接

计算机二级