有以下程序: #include<stdio.h> void fun(char*t,char木*s) { while(*t!=0)t++; while((*t++=*s++)!=0); } main()

admin2019-05-17  20

问题 有以下程序:
    #include<stdio.h>
    void fun(char*t,char木*s)
    {
    while(*t!=0)t++;
    while((*t++=*s++)!=0);
    }
    main()
    {
    char ss[10]=’’acc’’,aa[10]=’’bbxxyy’’;
    fun(ss,aa);
    printf(’’%s,%s\n’’,ss,aa);
    }
    程序的运行结果是(    )。

选项 A、acc,bbxxyy
B、acebbxxyy,bbxxyy
C、accxxyy,bbxxyy
D、accxyy,bbxxyy

答案B

解析 本题重点考查while循环语句的简单应用。在函数fun()中,前一个while循环的作用是:如果形参指针t所指内容不为0,则让t增1,直到它指向0。后一个while循环的作用是:将s所指内容赋给t所指地址,然后两者同时增1,直到赋给t的内容为0。由此可见,函数fun()的作用就是将形参s所指字符串连接到形参t所指字符串末尾,相当于库函数中的strcat()。主函数中使用fun()将数组aa中的字符串连接到了数组ss中原有字符串之后,所以执行完后,ss中的字符串为“accbbxxyy”。程序最后输出的结果是:accbbxxyy,bbxxyy,因此B选项正确。
转载请注明原文地址:https://jikaoti.com/ti/iBf0FFFM
0

最新回复(0)