AI迅剑 2023-07-15 19:09 采纳率: 85.7%
浏览 32
已结题

关于#递归#的问题,如何解决?

四、完善程序
1.李生素数是指两个相差为 2 的素数,例如:3 he5,5 he7,11和13 等。下面程序可以输出五对李生素数,其中函数 g 的功能是: 断整数 a 是否是素数

img


2.下面程序的功能是利用递归的方法生成从 1到 n(n<1)的 n 个数的全部可能的排列( 不一定按升序输出 ) 。例如,输入 3,则应该输出( 每行输出 5个数的排列)

img

  • 写回答

2条回答 默认 最新

  • threenewbee 2023-07-15 19:16
    关注

    第一题
    1 true 2 while 3 return false; 4 q(k+2) 5 k++

    第二题

    #include <iostream>
    using namespace std;
    
    int n, a[10];
    long count = 0;
    
    void perm(int k) {
        int j, p, t;
        if (k == n) {
            count++;
            for (p = 1; p <= n; p++)
                cout << a[p];
            cout << " ";
            if (count % 5 == 0)
                cout << endl;
            return;
        }
        for (j = k; j <= n; j++) {
            t = a[k];
            a[k] = a[j];
            a[j] = t;
            perm(k + 1);
            t = a[k];
            a[k] = a[j];
            a[j] = t;
        }
    }
    
    int main() {
        int i;
        cin >> n;
        for (i = 1; i <= n; i++)
            a[i] = i;
        perm(1);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月23日
  • 已采纳回答 7月15日
  • 创建了问题 7月15日

悬赏问题

  • ¥15 c++2013读写oracle
  • ¥15 c++ gmssl sm2验签demo
  • ¥15 关于模的完全剩余系(关键词-数学方法)
  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助
  • ¥30 模拟电路 logisim
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音