单选题

下列代码试图打印数字1-9的全排列组合

发布于 2022-03-03 22:34:46

下列代码试图打印数字1-9的全排列组合。
#include "stdio.h"
#define N 9
int x[N]
int count = 0

void dump() {
  int i = 0
  for (i = 0 i < N i++) {
    printf("%d", x[i])
  }
  printf("\n")
}

void swap(int a, int b) {
  int t = x[a]
  x[a] = x[b]
  x[b] = t
}

void run(int n) {
  int i
  if (N - 1 == n) {
    dump()
    count ++
    return
  }
  for (i = ___ i < N i++) {
    swap(___, i)
    run(n + 1)
    swap(___, i)
  }
}

int main() {
  int i
  for (i = 0 i < N i++) {
    x[i] = i + 1
  }
  run(0)
  printf("* Total: %d\n", count)
}
其中run函数中缺失的部分应该依次为:

登录后免费查看答案
关注者
0
被浏览
44
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看