c++编程题 输出全部满足以下条件的三位正整数n 它既是完全平方数又有两位数字相同

2025-06-28 22:53:50
推荐回答(5个)
回答1:

#include "stdio.h"
void main()
{
for (int i = 100; i != 1000; ++i)
{
for (int j = 1; j <= i; ++j)
{
if (i == j * j)
{
int Units = (i % 100) % 10;
int Tens = ((i % 100) - Units) / 10;
int Hundreds = (i - Tens * 10 - Units) / 100;
if (Units == Tens || Units == Hundreds || Tens == Hundreds)
{
printf("\n既是完全平方数又有两位数字相同的三位正整数有:%d", i);
}
}
}

}
}

回答2:

if(a/100==a%100/10 || a/100==a%10 || a%100/10==a%10)
printf("%5d",a);
b++; 交换位置
下面是我编写的
#include
int main()
{
int a,b,i,j,k;
for(b=10;b<=31;b++)
{
a=b*b;
i=a/100;
j=a%100/10;
k=a%10;
if(i==j||i==k||j==k)
printf("%5d\n",a);
}
return 0;
}

回答3:

int bv()
{
int a = 100;
for (int i = 10; a< 1000; i++)
{
a = i * i;
int a1,a2,a3;
a3 = a / 10;
a1 = a % 10;
a2 = a3 % 10;
a3 = a3 / 10;
if (a1 == a2 && a2 == a3) continue;
if ((a1 == a2) || (a3 == a2) ||(a1 == a3))
{
printf("%d\n",a);
}
}
return 0;
}

//////////////////////////////
int main()
{
int a=0,b=10;
while(a<1000)
{
a=b*b;
if(a/100==a%100/10 || a/100==a%10 || a%100/10==a%10)
printf("%5d",a);////////////////////////这个要放在循环里
b++;/////////// 这个要放在循环外
}
getch();
return 0;
}

回答4:

int main()
{
int account;
int a,b=10;

while(a<1000)
{
a=b*b;
if(a/100==a%100/10 || a/100==a%10 || a%100/10==a%10 )

printf("%5d",a);
b++;
}
printf("\n");
return 0;
}
自己对着看不会么

回答5:

“getch()” 这一步没有宣布在这范围,你可以把这步改为 “int getch(void)”、