问题
单项选择题
有以下程序: #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.*****a*b
B.a*b
C.a*b****
D.ab
答案
参考答案:C
解析: 函数fun中的第一个while循环语句将指针定位在字符串a的第一个不是*号的字符上;第二个while循环语句将a所指向的字符赋值给b,直到字符串的结束符为止。调用函数fun(s,t);,首先将指针指向'a',s=“a*b****”,然后将s中的字符赋给t。