用数组求解的算法。不懂。
将自然数1至100按顺时针围成一圈,首先取出1,然后顺时针方向按步长L=30取数(已取出的数不再参加计数),直到所有的数取完为止。编程求最后一个取出的数是多少。用数组怎么写??这个题目什么意思?
[ 本帖最后由 粉jj 于 2011-4-21 14:04 编辑 ]
2011-04-21 13:58
程序代码:#include <stdio.h>
#include <string.h>
int main() {
char i, j = 0, k, a[101] = {0};
while (j < 100) {
for (i = 1; i <= 100; i++) {
if (!a[i]) {
k++;
}
if (k == 30) {
printf("%d\n", i);
k = 0;
a[i] = 1;
j++;
}
}
}
return 0;
}
2011-04-21 14:58
2011-04-21 16:15