C++课后习题训练记录Day43

1.练习项目:

输入一个整数 nn 个数字,然后按字典序升序输出这 n 个数字的所有全排列。

2.选择课程

在蓝桥云课中选择课程《16届蓝桥杯省赛无忧班(C&C++ 组)4期》,选择第一章中"竞赛常用库函数"课程8并开始练习。

3.开始练习

(1)源码:

#include<bits/stdc++.h>

using namespace std;

const int N = 10;

int a[N];

int n,i;

int main()

{

ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);

cin>>n;

for(i=0;i<n;i++){

cin>>a[i];

}

bool tag = true;

while(tag){

for(i=0;i<n;i++){

cout<<a[i]<<' ';

}

cout<<'\n';

tag=next_permutation(a,a+n);

}

for(i=0;i<n;i++){

cout<<a[i]<<' ';

}

return 0;

}

(2)检验结果

对此代码进行检验,检验后无报错,提交此代码,判题结果为正确100分。

(3)练习心得:bool是表示布尔值(逻辑值)的基本数据类型,只能有两个可能的值:真(true)或假(false); 利用bool定义tag控制while循环的结束:将next_permutation(a,a+n)赋值给tag,如果成功生成了下一个排列则返回true,如果当前已经是最后一个排列(无法再生成)则返回false;注意每段代码末尾的分号是否存在,如不存在则需即使补充;输入法是否切换为英语模式;语法是否错误。

相关推荐
被摘下的星星12 小时前
Go赋值操作的关键细节
开发语言·golang
jwn99913 小时前
Laravel2.x经典特性回顾
开发语言·php·laravel
TE-茶叶蛋13 小时前
使用FlyEnv启动PHP项目
开发语言·php
AI科技星13 小时前
基于四维速率恒为c公设的北斗GEO卫星昼夜钟差模型修正与实测验证
开发语言·人工智能·线性代数·算法·数学建模
xyq202413 小时前
C 标准库 - `<ctype.h>`
开发语言
Wenweno0o13 小时前
Ubuntu 系统配置 VS Code C++ 开发环境
数据库·c++·ubuntu
傻啦嘿哟13 小时前
Python 实现 Excel 数据可视化:柱状图制作教程
开发语言·python
草莓熊Lotso13 小时前
【Linux系统加餐】 mmap 文件映射全解:从底层原理、API 到实战开发(含 malloc 模拟实现)
android·linux·运维·服务器·c语言·c++
967713 小时前
mybatis的作用+sql怎么写
java·开发语言·mybatis
深邃-13 小时前
【C语言】-数据在内存中的存储(2):浮点数在内存中的存储
c语言·开发语言·数据结构·c++·算法·html5