永发信息网

有M个人,挑选N人出来排以(无先后排序),请计算出所有可能

答案:1  悬赏:0  手机版
解决时间 2021-11-13 16:47
  • 提问者网友:欺烟
  • 2021-11-12 20:17
有M个人,挑选N人出来排以(无先后排序),请计算出所有可能
最佳答案
  • 五星知识达人网友:轻熟杀无赦
  • 2021-11-12 20:57
#include "stdio.h"#include #include "time.h"int main(int argv,char *argc[]){ int N,M,i,j,k,n,t,*p; printf("Input N & M(int N,M>0)...\n"); if(scanf("%d%d",&N,&M)!=2 || N<1 || M<1){//输入N、M,错误则退出 printf("Input error, exit...\n"); return 0; } srand((unsigned)time(NULL));//预置伪随机初始状态 if((p=(int *)malloc(sizeof(int)*N))==NULL){//根据输入的N申请数组大小,失败则退出 printf("Application memory failure, exit...\n"); return 0; } for(n=i=0;ik)//是素数则存入数组 p[n++]=k; } printf("\nThe prime number(s) is(are) as follows:\n"); for(t=i=0;ip[j]) k=j; if(k-i) j=p[k],p[k]=p[i],p[i]=j; printf(++t%M ? "%5d" : "%5d\n",p[i]);//排好一个输出一个,每M个回行 } free(p);//释放申请的空间 if(t%M)//若最后一行不足M个数则补一个回车 printf("\n"); return 0;} 运行样例:追问大佬我咋一个都看不懂,好乱。。。。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯