c程序中的CountDownUp
CountDownUp in c program
我想创建一个 CountDownUP 程序但代码不起作用,我希望它输出 5 4 3 2 1 0 1 2 3 4 5
但它只输出 5 4 3 2 1 0 1
void countDownUp (unsigned int k){
printf("\n");
for (int i = 0; i < k; i=1){
k = k - i;
printf("%d ", k);
}
for (int n = 0; n <= k; n++){
printf("%d ",n);
}
}
int main(){
int num;
fflush(stdout);
scanf("%d", &num);
countDownUp (num);
return 0;
}
第一个for
循环每次循环递减k
,并在k == 1
时停止。所以第二个循环只是从 0
迭代到 1
.
你不应该在第一个循环中修改k
,你应该减少i
。
for (int i = k; i > 1; i--) {
printf("%d ", i);
}
只是为了好玩,您可以使用一个 for
和:
for(int i = k; i >= -k; i--)
if(i <= -1)
printf("%d ", -i);
else
printf("%d ", i);
我想创建一个 CountDownUP 程序但代码不起作用,我希望它输出 5 4 3 2 1 0 1 2 3 4 5
但它只输出 5 4 3 2 1 0 1
void countDownUp (unsigned int k){
printf("\n");
for (int i = 0; i < k; i=1){
k = k - i;
printf("%d ", k);
}
for (int n = 0; n <= k; n++){
printf("%d ",n);
}
}
int main(){
int num;
fflush(stdout);
scanf("%d", &num);
countDownUp (num);
return 0;
}
第一个for
循环每次循环递减k
,并在k == 1
时停止。所以第二个循环只是从 0
迭代到 1
.
你不应该在第一个循环中修改k
,你应该减少i
。
for (int i = k; i > 1; i--) {
printf("%d ", i);
}
只是为了好玩,您可以使用一个 for
和:
for(int i = k; i >= -k; i--)
if(i <= -1)
printf("%d ", -i);
else
printf("%d ", i);