问题 问答题

[说明2]

在C函数2中,reverse(unsigned int n)的功能是求出并返回n的反序数。例如,1234的反序数是4321,其求解过程如下:

(1)由1234除以10得到商123和余数4,0乘以10再加上4得到4;

(2)由123除以10得到商12和余数3,4乘以10再加上3得到43;

(3)由12除以10得到商1和余数2,43乘以10再加上2得到432;

(4)由1除以10得到商0和余数1,432乘以10再加上1得到4321。

[C函数2]

unsigned int reverse(unsigned int n)

{

unsigned int result=0;

while( (1) ){

result=result *10+n%10;

n= (2) ;

}

return result;

}

请根据说明2,填充C函数2中的空缺(1)和(2)。

答案

参考答案:

(1)n!=0或n>0

(2)n/10

解析:

本问题考查整数运算。

从题中给出的运算过程可知,在所运算的整数不为0时,运算过程会继续,因此空(1)处应填入“n!=0”。除以10后要丢掉个位数的处理则由空(2)处进行,即填入“n/10”。

填空题
单项选择题