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