A-A+
有下列程序: #include voidfun(char*a char*b
问题详情
有下列程序: #include<stdi0.h> voidfun(char*a,char*b) { while(*a==*)a++; while(*b=*a){b++;a++;} } voidmain() { char*s="*****a*b****",t[80]; fun(s,t);puts(t) } 程序的运行结果是()。
A.*****a*b
B.a*b
C.a*b****
D.ab请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:C
C。【解析】在程序的主函数中main定义了一个指向字符串的指针和一个字符数组,然后调用fun(s,t),在fun中第一个while语句判断*a中的值为“*”时继续扫描,如果不是“*”终止,第二个while循环,将*a中从“a”开始的后续所有字符都赋予*b,也就是t[0]中的内容为“a*b****”,所以此时的运行结果为选项C。