C语言程序:寻找满足条件的四位数
#include<stdio.h>\n#include<math.h>\n#include<string.h>\nint main(){\n int b[4]={0}; // 用于存储各位数字的数组\n int i,j,n,m,k,y,flag=0,max,t; // 定义变量\n scanf("%d %d",&y,&n); // 输入y和n的值\n for(i=0;;i++){ // 无限循环,直到找到符合条件的数\n flag=1; // 初始化flag为1\n t=3; // 初始化t为3\n k=y; // 将y的值赋给k\n while(k!=0){ // 将k的各位数字存入数组b中\n b[t]=k%10;\n t--;\n k/=10;\n }\n for(j=0;j<3;j++){ // 将数组b中的数字按照升序排列\n for(k=j;k<4;k++){\n if(b[j]>b[k]){\n t=b[j];\n b[j]=b[k];\n b[k]=t;\n }\n }\n }\n for(j=0;j<3;j++){ // 检查数组b中的数字是否有重复\n if(b[j]-b[j+1]!=0){\n flag++;\n }\n }\n if(flag==n){ // 如果flag的值等于n,输出结果并结束循环\n printf("%d %04d",i,y);\n break;\n }\n else{ // 否则,将y的值加1,继续下一轮循环\n y++;\n }\n }\n}
原文地址: https://www.cveoy.top/t/topic/qd3A 著作权归作者所有。请勿转载和采集!