问题 单项选择题

下面程序的输出结果是_______。
unsigned fun(unsigned num)
unsigned k=1;
do
k*=num%10;
num/=10;
while(num);
return(k);

main()
unsigned n=26;
printf("%d\n",fun(n));

A.0

B.4

C.12

D.无限次循环

答案

参考答案:C

解析:[评析] 本题定义了一个fun函数,用于num求和,具体执行过程如下:
num=26:k=k*(num%10)=1*(26%10),所以k=6,num=num/10=2;
num=2:k=k*(num%10)=6*(2%10),所以k=12,num=num/10=0);
num=O:while条件不成立,所以返回k的值12。

名词解释
单项选择题