永发信息网

c语言作业,输出四个数A,B,C,D的全排列

答案:4  悬赏:70  手机版
解决时间 2021-03-21 14:24
c语言作业,输出四个数A,B,C,D的全排列
最佳答案
#include <iostream>
#include <stdio.h>
#include <algorithm>
using namespace std;
int main()
{
    int num[4]={1,2,3,4};
    do
    {
        printf("%c,%c,%c,%c\n",num[0]+'A'-1,num[1]+'A'-1,num[2]+'A'-1,num[3]+'A'-1);
    }while(next_permutation(num,num+4));
    return 0;
}可以借助于stl模板中的next_permutation函数,这个函数是按照字典序不停的取该序列的下一个序列,直到结束。然后输出的时候讲数字转化为你要的字母即可。

例如 第一个序列是1,2,3,4,--》A,B,C,D
全部回答
只要结果生成的话,用木头字典工具集里的排列字典生成
c: #include <stdio.h> #include <stdlib.h> char letters[]={"ABCDEFGHIJKLMOPQRSTUVWXYZ"}; void pai(int*stack,int n,int i){     if(i==n){         for(int j=0;j<i;j++){             printf("%c",letters[stack[j]]);         }         printf("\n");     }else{         int t;         for(int j=0;j<n;j++){             t=1;             for(int k=0;k<i;k++){                 if(stack[k]==j){                     t=0;                     break;                 }             }             if(t){                 stack[i]=j;                 pai(stack,n,i+1);             }         }     } } int main(void){     int n;     scanf("%d",&n);     pai((int*)malloc(sizeof(int)*n),n,0);     return 0; }
字符数组,循环输出
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
苏泊尔电饭煲型号查讯有没有CFXB50FC533T- 75
山东省建工集团怎么样
我的电脑为什么只剩下C盘了早上开机的时候,
恒星大理石厂地址有知道的么?有点事想过去
019-0852213 这个是哪里号码
extjs gridpanel 怎么获得表头名
4399的游戏数据存在哪?
vivoy20可以安装4g卡吗?
中国古代,人们在农业生产中,根据月亮的运行
交强险包括的内容都有什么
我想写小说,现愁笔名。朋友们帮帮忙,关于琉
怡佳足疗YJ旗舰店在什么地方啊,我要过去处理
关于清明节的谚语
怎么把触摸显示器连接到WIN7系统使用触摸效果
又上点怎么打
推荐资讯
年功工资是国家强制发放吗
环境化学好的大学排名
某汽车制造厂上半年生产小汽车4800辆,下半年
4.A公司为甲、乙两个股东共同投资设立的股份
前几天我在一酒庄买了两瓶五粮液1100元,是真
东举院巷怎么去啊,有知道地址的么
恶意贷款诈骗一千多又不还后果会怎样
罗马全面战争,如果分裂东西两罗马,玩哪一个
马来西亚旧街场白奶茶和三叔公拉茶,哪种比较
路由器被人砸碎后怎么恢复网络
公务员转正个人现实表现情况怎么写
来宾现在考驾照能作弊吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?