我正在用 C 编写一些有用的函数。其中之一是isPalindrome()
.
我想确定一个数字是否是回文,我应该...
- 获取数组中的所有数字
- 使用两个索引进行迭代——一个从 0 开始,一个从数组计数开始
- 增加/减少索引,同时在数组匹配时下标,如果数组计数为 0,我们有一个回文(即完成所有数字)。
我想出了...
int isPalindrome(int num) {
int places[100];
int i = 0;
while (num > 0) {
places[i++] = num % 10;
num /= 10;
}
int j = 0;
while (i >= 0 && places[j++] == places[--i]) {
}
return i == -1;
}
这通常是如何完成的?
我正在自学 C,虽然我可以知道我的代码何时编译并且不需要一整天的时间来解决问题,但我没有任何专家的眼睛来告诉我我是否走在正确的轨道上。
那么,对我的代码有什么改进或建议吗?
非常感谢!