当前位置: 首页 > news >正文

变量的注意或许需要调试

输入一个自然数N(1<=N<=9),从小到大输出用1~N组成的所有排列,也就说全排列。例如输入3则输出
123
132
213
231
312
321

输入格式:

输入一个自然数N(1<=N<=9)

输出格式:

N的全排列,每行一个

限制:

每个测试点1秒

样例 1 :

输入:
2
输出:
12
21

样例 2 :

输入:
3
输出:
123
132
213
231
312
321

#include<stdio.h>int n,book[10],a[101];void dfs(int step){int i;if(step == n+1){for(i = 1;i <= n;i ++)printf("%d ",a[i]);printf("\n");return;}for(i = 1;i <= n;i ++){if(book[i] == 0){a[step] = i;book[i] = 1;dfs(step + 1);book[i] = 0;}}return;}int main(){int i;scanf("%d",&n);for(i = 1;i <= n;i ++){a[i] = 0;}dfs(1);return 0;
}

i 原本被搞为全局变量

book[i] = 1;没有

if(step == n+1){for(i = 1;i <= n;i ++)printf("%d ",a[i]);printf("\n");return;}

放在了for循环后面

错误类型还是一样的,还是要多练。另外就是变量值这里,举例子的时候可能也只是逻辑上的,而忽视了具体的,最好把变量的值的变化写下来或者使用IDEL的debug功能

http://www.lryc.cn/news/422896.html

相关文章:

  • C# 增删改查教程 代码超级简单
  • OceanBase V4.2特性解析:OB Oracle模式下的 SDO_GEOMETRY 空间数据类型
  • 简介面向对象的封装、继承、多态和抽象
  • OpenCV + CUDA + cuDNN模块编译
  • Redis 缓存预热、雪崩、穿透、击穿
  • 仿RabbiteMq简易消息队列基础篇(gtest的使用)
  • 图像处理中的图像梯度和幅值是什么???(通俗讲解)
  • 01.计算机网络导论
  • API网关:SpringCloud GateWay
  • 【Leetcode 383】赎金信 —— 哈希表 有注解
  • Linux 常见的冷知识集锦
  • 【喜报】科大睿智祝贺青岛海信网络科技通过CMMI5级评估
  • 2024全国大学生电子设计大赛全国初赛 E题 三子棋游戏装置 一等奖满分最简方案
  • 尚品汇-ES(三十一)
  • NC 跳台阶
  • linux 文件编程
  • 【后端速成 Vue】实现动态表白墙
  • 【日常开发】 java返回ECharts数据结构封装
  • Table表格控件实现单选功能
  • AI技术加速落地 港科广联手思谋打开智能缺陷检测新纪元
  • Python爬虫开发:BeautifulSoup、Scrapy入门
  • 数据科学、数据分析、人工智能必备知识汇总-----常用数据分析方法-----持续更新
  • 学习vue Router 一 起步,编程式导航,历史记录,路由传参
  • Qt/C++最新地图组件发布/历时半年重构/同时支持各种地图内核/包括百度高德腾讯天地图
  • Laravel + Thinkphp 生成二维码
  • 2408C++,C++20的无侵入式反射
  • 抽象工厂模式(Abstract factory pattern)- python实现
  • adb Connection reset by peer的解决方法
  • 111111111
  • 搜维尔科技:Varjo XR-4使用UE5 打造最具沉浸感的混合现实环境