有以下程序:
#include< stdio.h >
void fun(char *a,char *b)
{
while(*a= =′*′)a+ +;
while(*b=*a)
{b+ +;a+ +;}
}
main( )
{
char *s=″*****a*b****″t[80];
fun(s,t);puts(t);
}
程序的运行结果是( )。
【正确答案】
A
【答案解析】注意两个while,第一个是判断相等“= =”,第二个是赋值“=”,第一个循环终止的条件是指针指向的字符不为“*”,就会在遇到字符“a”时停止,第二个循环把a指针所指的内容依次赋给了b指针指向的内容,直到字符串结束时终止。所以结果就是字符串的后半段,选项A正确。