列举两种方法
1)
/*
*打印由数字4 5 7 9 所组成所有四位数 并统计总数
*/
#include <stdio.h>
int main(void)
{
//数组将不连续数据进行连续存储 得以用循环算法
int ar[4]={4,5,7,9};
int a,b,c,d,num,count=0;//a:千位 b:百 c:十 d:个
for(a=0;a<4;a++)
{
for(b=0;b<4;b++)
{
for(c=0;c<4;c++)
{
for(d=0;d<4;d++)
{
if(ar[a]!=ar[b]&&ar[a]!=ar[c]&&ar[a]!=ar[d] \
&&ar[b]!=ar[c]&&ar[b]!=ar[d]&&ar[c]!=ar[d])
{
num=ar[a]*1000+ar[b]*100+ar[c]*10+ar[d];
count++;
printf("%d ",num);
}
}
}
}
}
printf("\n总计:%d\n",count);
return 0;
}
#include "stdio.h"
main(void)
{
int i=0,num=0,th,a=0,b=0,c=0,d=0;
for(i=1000;i<10000;i++)
{
a=i/1000;
b=i/100%10;
c=i/10%10;
d=i%10;
if((a==4|a==5|a==7|a==9)&(b==4|b==5|b==7|b==9)&(c==4|c==5|c==7|c==9)&(d==4|d==5|d==7|d==9))
{
if((a!=b)&&a!=c&&a!=d&&b!=c&&b!=d&&c!=d)
{
printf("%d ",i);
num++;
}
}
}
printf(\n总计:%d\n",num);
return 0;
}