#include<stdio.h>
#include<math.h>
int main()
{
int i,t, a, b, c, d, n = 0;
for (i=1000;i<=9999;i++)
{
t = (int) sqrt(i);
if (t * t == i)
{
a = i / 1000;
b = i / 100 % 10;
c = i / 10 % 10;
d = i % 10;
if (a + b == 12 && c * d == 24)
{
printf("%d", i);
n = n + 1;
}
}
}
printf("\n");
printf("%d",n);
return 0;
}
思路:
1.使用if语句先判断出循环变量i是否满足完全平方数.
2.如果满足,再进一步对四位数的各个数进行分解,再用if语句表达出符合题目要求的代码.
注意事项:
1.if语句只包含其下面的第一句代码,如需要多行代码表达,必须用花括号进行限制.
2.在此题中,想验证你写的代码是否正确,可写一句printf(“%d”,i)打印i的值,进行人工验证.