【正确答案】
【答案解析】n+2
-s或-1*s
*p!="\0"或等价形式
num*10或等价形式
p++或等价形式
[解析] 本题考查C语言程序设计基本技能。考生需认真阅读题目中的说明,从而确定代码的运算逻辑,在阅读代码时,还需注意各变量的作用。
函数f(double eps)的功能是计算兀的近似值。观察题中给出的计算公式,可知在循环中n每次递增2,因此空(1)处应填入“n+2”。由于公式中的各项是正负交替的,因此结合表达式“term=s/n”可知变量s就是起此作用的。空(2)处应填入“-s”或“-1*s”。
对于函数fun(char *str]),从字符序列中取出数字并组合为一个整数时,对于每个数字,只需将之前获取的部分乘以10再加上该数字的值即可。
以67385423为例。
67385423=(((((((0+6)*10+7)*10+3)*10+8)*10+5)*10+4)*10+2)*10+3
函数中的变量i是用来计算位数的,num用来计算所获得的整数值。显然,最多读取字符序列中的前8个数字,或者到达字符序列的末尾(*p!="\0")时,计算也需结束。因此,空(3)处应填入“*p!:"\0"”。
根据num的作用,空(4)处应填入“num*10”。
根据指针p的作用,空(5)处的代码应使得p指向下一个字符,因此应填入“p++”。