一个C语言问题,急待解决,谢谢好心人的帮忙!!

来源:百度知道 编辑:UC知道 时间:2024/05/05 12:14:47
我想了很久都没有好的办法解决这个问题,编写一个程序如下:

求出所有这样的三位整数,它的2倍,3倍仍然是三位整数,这三个三位数 使用1到9之间不同的数字。如m=192,2m=384,3m=756

谢谢好心人能帮帮我解决这个问题!

//不懂加我Q:279228807

#include <stdio.h>

int main(){
int a,a2,a3;//3倍仍为三位数则范围是100-333
unsigned int test=0;//用来位运算测试,要求有两字节以上长度
for(a=100;a<=333;a++){
a2=2*a;
a3=3*a;

test|=1<<(a/100);
test|=1<<((a/10)%10);
test|=1<<(a%10);

test|=1<<(a2/100);
test|=1<<((a2/10)%10);
test|=1<<(a2%10);

test|=1<<(a3/100);
test|=1<<((a3/10)%10);
test|=1<<(a3%10);

if(test==0x03FE) printf("%d\n",a);
test=0;
}
return 0;
}

#include<stdio.h>
void f()
{
int i,a1,b1,c1,a2,b2,c2,a3,b3,c3;
for(i=100;i<=999;i++)
if(2*i<=999&&2*i>=100&&3*i<=999&&3*i>=100)
{a1=i/100;b1=(i-a1*100)/10;c1=i-a1*100-b1*10;
a2=2*i/100;b2=(2*i-a2*100)/10;c2=2*i-a2*100-b2*10;
a3=3*i/100;b3=(3*i-a3*100)/10;c3=3*i-a3*100-b3*10;
if(a