【发布时间】:2010-11-21 15:43:10
【问题描述】:
这是一个面试问题:
给定一个由 n 个数字组成的序列(n 可以是任何数字,假设这个问题的 n 问题是在 C 中编写一个递归函数,将序列中的每个数字相加得到总和。如果该总和超过一位,则一次又一次地对数字求和,如果总和超过一位,则再次对数字求和。遵循此过程,直到总和减少到一位数。现在将过程中得到的所有总和相加,输出最终总和。
以上面的顺序为例:11、23、9、17、20、8、5、6
SUM(11, 23, 9, 17, 20, 8, 5, 6) = 99 => SUM(9, 9) = 18 => SUM(1, 8) = 9
现在将获得的所有总和相加,即SUM(99, 18, 9) = 126
请注意,该函数应该是C语言中的递归函数。
【问题讨论】:
-
要重新考虑 nic - “好问题”?几乎没有。
-
这不是一个项目,也不是一个家庭作业。给它贴上了破旧的标签
-
int RememberMe(int value){return RememberMe(RememberMe(value));} void main(){RememberMe(input);}
-
@Jon,这太刻薄了。 ;-)
-
我建议编辑你的帖子,让它成为一个问题,并补充说你是在一次采访中提出的。