unsigned fun(unsigned); int main() { unsigned num = 26; printf("%d", fun(num)); return 0; } unsigned fun(unsigned num) { unsigned k = 1; do { k *= num % 10; num /= 10; } while (num); return(k); }
12
无限循环
1
26
k==1,num==26 -> k*=(26%10) => k*=6 => k=1*6=6 , num/=10 => num=26/10=2; k==6,num==2 --> k*=(2%10) => k*=2 => k=k*2=12,num/=10 => num=2/10=0; num==0 循环结束。 return k=> return 12;
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题