用c语言编写一程序,查找所有不含数字0的三位数,并要求至少有两个相同数字。

如题所述

第1个回答  2012-01-09
#include <stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=9;i++)
for(j=1;j<=9;j++)
for(k=1;k<=9;k++)
{
if(i==j||i==k||j==k)
printf("%d%d%d ",i,j,k);
}
}
第2个回答  2012-01-09
#include <stdio.h>
#include <malloc.h>
bool ok(int n)
{
int a=n%10,b,c;
n/=10;
b=n%10;
n/=10;
c=n;
if(a==0||b==0||c==0)return false;
return a==b||b==c||a==c;
}
int main(void)
{

int i;
for(i=100;i<1000;i++)
{
if(ok(i))printf("%d ",i);
}
puts("");
return 0;
}
第3个回答  2012-01-09
#include<stdio.h>
main()
{
int i,a,b[3],s,c=0;
for(i=100;i<1000;i++)
{
a=i;
c=0;
while(a>=1)
{
b[c]=a%10;
a=a/10;
c++;
}
s=0;
for(c=0;c<=2;c++)
{
if(b[c]==0)
s=1;
}
if(s==0&&(b[0]==b[1]||b[1]==b[2]||b[0]==b[2]))
printf("%d\n",i);
}
return 0;
}
第4个回答  2012-01-09
#include <stdio.h>
void main()
{
int i,a,b,c;
for(i=100;i<1000;i++)
{
a=i/100;
b=i/10%10;
c=i%10;
if(a&&b&&c&&(a==b||b==c||a==c))
printf("%d ",i);
}
printf("\n");
}本回答被提问者采纳
相似回答