Mobed 2021-06-14 14:32 采纳率: 100%
浏览 66
已采纳

关于C语言全排列的题目

想编一个关于数字全排列的程序,但输入代码之后没有任何结果产生,想知道是什么原因

 

 

#include<stdio.h>
int main(void)
{
int n,temp;
int i,j;
int A[50];
printf("请输入n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{A[i-1]=i;}
for(j=1;j<n;j++)
{for(i=0;i<=n;i++)
{
if(i=n)
continue;
else
{
temp=A[i+1];
A[i+1]=A[i];
A[i]=temp;
for(i=0;i<n;i++)
printf("A[i] ");
printf("\n");
}
}
}

}

  • 写回答

4条回答 默认 最新

  • 关注
    #include<stdio.h>
    int main(void)
    {
        int n,temp;
        int i,j;
        int A[50];
        printf("请输入n:");
        scanf("%d",&n);
        for(i=0; i<n; i++)
        {
            A[i]=i;
        }
        for(j=0; j<n; j++)
        {
            for(i=0; i<=n; i++)
            {
                if(i==n)
                    continue;
                else
                {
                    temp=A[i+1];
                    A[i+1]=A[i];
                    A[i]=temp;
                    for(i=0; i<n; i++)
                        printf("%d ",A[i]);
                    printf("\n");
                }
            }
        }
    
    }
    

    第17行你的判断条件应该写==你少写了一个 

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 miniconda安装不了
  • ¥20 python代码编写
  • ¥20 使用MPI广播数据遇到阻塞
  • ¥15 TinyMCE如何去掉自动弹出的“链接…”工具?
  • ¥15 微信支付转账凭证,如何解决
  • ¥15 在win10下使用指纹登录时,界面上的文字最后一个字产生换行现象
  • ¥20 使用AT89C51微控制器和MAX7219驱动器来实现0到99秒的秒表计数,有开始和暂停以及复位功能,下面有仿真图,请根据仿真图来设计c语言程序
  • ¥15 51单片机 双路ad同步采样
  • ¥15 使用xdocreport 生成word
  • ¥15 请教怎么用MATLAB求坐标