A-A+
有以下程序 #include int fun(char s[]) { i
问题详情
有以下程序
#include <stdio.h>
int fun(char s[])
{ int n=0;
while(*s<=′9′&&*s>=′0′) {n=10*n+*s-′0′;s++;}
return(n);
}
main()
{ char s[10]={′6′,′1′,′*′,′4′,′*′,′9′,′*′,′0′,′*′};
printf("%dn",fun(s));
}
程序的运行结果是
A.9
B.61490
C.61
D.5
参考答案
正确答案:C
解析:在fun函数中,while循环的功能是:逐个取字符数组s的字符判断其是否是数字。若是则将其作为个位数字保存到变量n中,n的原数据的各个数位将相应左移一个10进制位。当指针s指向数组的第3位时,循环条件不成立,循环结束,返回n 的值,输出n的值为61。