下列程序中的函数 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++)

题目

下列程序中的函数 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);

}


相似考题
更多“下列程序中的函数 strcpy2() 实现字符串两次复制 , 即将 t 所指字符串复制两次到 s 所指内 ”相关问题
  • 第1题:

    有下列函数:

    int fun(char*S)

    {char*t=s;

    while(*t+ +);

    return(t-s);

    }

    该函数的功能是( )。

    A.比较两个字符串的大小

    B.计算s所指字符串占用内存字节的个数

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    解析:在函数fun(char*s)中,首先用字符指针变量t指向s,而循环语句while(*t++);的功能是使指针变量 t指向字符串变量s的末尾,这时退出循环,因而语句 return(t-s);返回的就是字符串s所指字符串的长度。

  • 第2题:

    有以下函数

    该函数的功能是( )。

    A.计算s所指字符串占用内存字节的个数

    B.比较两个字符串的大小

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    首先char*s接受一个字符型数组的首地址并将这个首地址赋给另一个字符型指针char*t,while(*t++)不断循环,直到*t为‘\o’,再将t一1,这时字符指针t指向字符串的最后一个字符,又因为s指向字符数组的首地址即字符串的首地址,所以return(t--s)便是返回字符数组中字符串的长度。故本题答案为C)。

  • 第3题:

    以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指向内存空间中,形成一个新的字符串s。请填空。 void sstrcpy(char *s,char *t) { while(*s++=______); } main() { char str1[100],str2[]=”abcdefgh”; sstrcpy(str1,str2); printf(“%s ”,str1); }

    A.*t++

    B.*t

    C.*s

    D.*s++


    *t++ 或 *(t++) 将t所指字符赋给s,然后各自增1,指向下一字符,知道遇到最后的字符‘0’,则退出循环。

  • 第4题:

    有下列函数: int fun(char*s) { char*t=s; while(*t++); reurn(t-s); } 该函数的功能是( )。

    A.比较两个字符串的大小

    B.计算s所指字符串占用内存字节的个数

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    解析:在函数fun(char*s)中,首先用字符指针变量t指向s,而循环语句while(*t++);的功能是使指针变量t指向字符串变量s的末尾,这时退出循环,因而语句return(t-s);回的就是字符串s所指字符串的长度。

  • 第5题:

    有以下函数: int fun(char * s) {char * t=s; while(*t++); return(t-s) 该函数的功能是______。

    A.比较两个字符串的大小

    B.计算s所指字符串占用内存字节个数

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    解析: 定义一个字符指针t,并将字符指针s的首地址赋给字符指针t;通过while语句将指针t往下移到字符串最后一个字符后面的地址,指针s始终指向首地址,将末地址减去首地址可以计算出字符串的长度。